aboutsummaryrefslogtreecommitdiff
path: root/binutils/testsuite/lib
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2015-09-29 09:35:47 -0700
committerH.J. Lu <hjl.tools@gmail.com>2015-09-29 13:31:57 -0700
commitcbd44e247ede49688e1e1fa42e57d390ad141967 (patch)
tree7296da5e95dea5f24228fc3499a8ffc84c861b3e /binutils/testsuite/lib
parent0bcf3dd6905d67936815411b42dab6fd4c47b4db (diff)
downloadgdb-cbd44e247ede49688e1e1fa42e57d390ad141967.zip
gdb-cbd44e247ede49688e1e1fa42e57d390ad141967.tar.gz
gdb-cbd44e247ede49688e1e1fa42e57d390ad141967.tar.bz2
Don't use the output section size to copy input section
We can't use the output section size to copy input section since --interleave will shrink the output section. Instead, we change bfd_convert_section_contents to return the updated input section size. When we do that, we don't need to adjust the output section size to skip gap fills. bfd/ PR binutils/19020 * bfd.c (bfd_convert_section_contents): Add ptr_size parameter. * bfd-in2.h: Regenerated. binutils/ PR binutils/19020 * objcopy.c (copy_object): Don't adjust the output section size when copying from input sections. (copy_section): Use input section size for the copy. Get the updated section size from bfd_convert_section_contents. binutils/testsuite/ PR binutils/19020 * binutils-all/objcopy.exp: Run pr19020a and pr19020b. * lib/utils-lib.exp (run_dump_test): Support binary input. * binutils-all/pr19020.in: New file. * binutils-all/pr19020a.d: Likewise. * binutils-all/pr19020b.d: Likewise.
Diffstat (limited to 'binutils/testsuite/lib')
-rw-r--r--binutils/testsuite/lib/utils-lib.exp16
1 files changed, 10 insertions, 6 deletions
diff --git a/binutils/testsuite/lib/utils-lib.exp b/binutils/testsuite/lib/utils-lib.exp
index 9c24cf1..fd5b6f6 100644
--- a/binutils/testsuite/lib/utils-lib.exp
+++ b/binutils/testsuite/lib/utils-lib.exp
@@ -447,12 +447,16 @@ proc run_dump_test { name {extra_options {}} } {
set srcfile $srcdir/$subdir/$opts(source)
}
- set exec_output [binutils_assemble_flags ${srcfile} $tempfile $opts(as)]
- if [string match "" $exec_output] then {
- send_log "$exec_output\n"
- verbose "$exec_output"
- fail $testname
- return
+ if { $opts(as) == "binary" } {
+ file copy -force ${srcfile} $tempfile
+ } else {
+ set exec_output [binutils_assemble_flags ${srcfile} $tempfile $opts(as)]
+ if [string match "" $exec_output] then {
+ send_log "$exec_output\n"
+ verbose "$exec_output"
+ fail $testname
+ return
+ }
}
set progopts1 $opts($program)