mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2025-03-01 13:26:47 +08:00
Fix PR binutils/26356 on hppa*-*-hpux*.
PR 26356 * som.c (som_bfd_copy_private_section_data): Issue error when a subspace is specified without its containing space. * testsuite/binutils-all/objcopy.exp (objcopy --reverse-bytes): Add "-j $PRIVATE$" to command on hppa*-*-hpux*. * testsuite/lib/utils-lib.exp (default_binutils_run): Remove existing dollar-sign quotes before quoting. Do this prior to generating log output.
This commit is contained in:
parent
6b5473c97e
commit
9e7ed8b080
@ -1,3 +1,9 @@
|
||||
2020-08-27 John David Anglin <danglin@gcc.gnu.org>
|
||||
|
||||
PR 26356
|
||||
* som.c (som_bfd_copy_private_section_data): Issue error when a
|
||||
subspace is specified without its containing space.
|
||||
|
||||
2020-08-27 Alan Modra <amodra@gmail.com>
|
||||
|
||||
PR 26469
|
||||
|
14
bfd/som.c
14
bfd/som.c
@ -5455,8 +5455,18 @@ som_bfd_copy_private_section_data (bfd *ibfd,
|
||||
|
||||
/* Reparent if necessary. */
|
||||
if (som_section_data (osection)->copy_data->container)
|
||||
som_section_data (osection)->copy_data->container =
|
||||
som_section_data (osection)->copy_data->container->output_section;
|
||||
{
|
||||
if (som_section_data (osection)->copy_data->container->output_section)
|
||||
som_section_data (osection)->copy_data->container =
|
||||
som_section_data (osection)->copy_data->container->output_section;
|
||||
else
|
||||
{
|
||||
/* User has specified a subspace without its containing space. */
|
||||
_bfd_error_handler (_("%pB[%pA]: no output section for space %pA"),
|
||||
obfd, osection, som_section_data (osection)->copy_data->container);
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
@ -1,3 +1,12 @@
|
||||
2020-08-27 John David Anglin <danglin@gcc.gnu.org>
|
||||
|
||||
PR 26356
|
||||
* testsuite/binutils-all/objcopy.exp (objcopy --reverse-bytes): Add
|
||||
"-j $PRIVATE$" to command on hppa*-*-hpux*.
|
||||
* testsuite/lib/utils-lib.exp (default_binutils_run): Remove existing
|
||||
dollar-sign quotes before quoting. Do this prior to generating log
|
||||
output.
|
||||
|
||||
2020-08-27 Ralf Habacker <ralf.habacker@freenet.de>
|
||||
|
||||
PR 26088
|
||||
|
@ -170,7 +170,11 @@ if { [file exists $tempfile] } {
|
||||
set reversed ${tempfile}-reversed
|
||||
set sect_names [get_standard_section_names]
|
||||
if { $sect_names != "" } {
|
||||
set got [binutils_run $OBJCOPY "$OBJCOPYFLAGS -j [lindex $sect_names 1] --reverse-bytes=4 $tempfile $reversed"]
|
||||
if { [istarget hppa*-*-hpux*] } {
|
||||
set got [binutils_run $OBJCOPY "$OBJCOPYFLAGS -j \$PRIVATE\$ -j [lindex $sect_names 1] --reverse-bytes=4 $tempfile $reversed"]
|
||||
} else {
|
||||
set got [binutils_run $OBJCOPY "$OBJCOPYFLAGS -j [lindex $sect_names 1] --reverse-bytes=4 $tempfile $reversed"]
|
||||
}
|
||||
} else {
|
||||
set got [binutils_run $OBJCOPY "$OBJCOPYFLAGS -j .data --reverse-bytes=4 $tempfile $reversed"]
|
||||
}
|
||||
@ -191,10 +195,6 @@ if { [file exists $tempfile] } {
|
||||
set found_rev [regexp -lineanchor $want $revdata -> revdata]
|
||||
|
||||
if {$found_orig == 0 || $found_rev == 0} then {
|
||||
# som doesn't have a .data section
|
||||
setup_xfail "hppa*-*-hpux*"
|
||||
clear_xfail "hppa*64*-*-hpux*"
|
||||
|
||||
fail "objcopy --reverse-bytes"
|
||||
} else {
|
||||
scan $origdata "%2x%2x%2x%2x" b1 b2 b3 b4
|
||||
|
@ -80,13 +80,16 @@ proc default_binutils_run { prog progargs } {
|
||||
regsub -- "-j \\.bss" $progargs "-j [lindex $sect_names 2]" progargs
|
||||
}
|
||||
|
||||
# Gotta quote dollar-signs because they get mangled by the
|
||||
# shell otherwise. Since get_standard_section_names returns
|
||||
# quoted section names, we first remove the original quote
|
||||
# and then requote.
|
||||
regsub -all {\\\$} "$progargs" {$} progargs
|
||||
regsub -all {\$} "$progargs" {\$} progargs
|
||||
|
||||
send_log "$prog $progargs\n"
|
||||
verbose "$prog $progargs"
|
||||
|
||||
# Gotta quote dollar-signs because they get mangled by the
|
||||
# shell otherwise.
|
||||
regsub -all "\\$" "$progargs" "\\$" progargs
|
||||
|
||||
set state [remote_exec host $prog $progargs]
|
||||
set binutils_run_status [lindex $state 0]
|
||||
set exec_output [prune_warnings [lindex $state 1]]
|
||||
|
Loading…
Reference in New Issue
Block a user