+2018-09-15 Alan Modra <amodra@gmail.com>
+
+ * testsuite/binutils-all/group-7a.d,
+ * testsuite/binutils-all/group-7b.d,
+ * testsuite/binutils-all/group-7c.d,
+ * testsuite/binutils-all/symbols-1.d,
+ * testsuite/binutils-all/symbols-2.d,
+ * testsuite/binutils-all/symbols-3.d,
+ * testsuite/binutils-all/symbols-4.d: Remove DUMPPROG.
+
2018-09-14 Alan Modra <amodra@gmail.com>
PR binutils/23633
#name: copy removing reloc group member
#source: group-7.s
#PROG: objcopy
-#DUMPPROG: readelf
#objcopy: --remove-section .data.foo
#readelf: -Sg --wide
#name: copy removing non-reloc group member
#source: group-7.s
#PROG: objcopy
-#DUMPPROG: readelf
#objcopy: --remove-section .data2.foo
#readelf: -Sg --wide
#name: copy removing reloc and non-reloc group member
#source: group-7.s
#PROG: objcopy
-#DUMPPROG: readelf
#objcopy: -R .data.foo -R .data2.foo
#readelf: -g --wide
#PROG: objcopy
#objcopy: -w -L !foo -L fo*
#source: symbols.s
-#DUMPPROG: nm
#nm: -n
#...
#PROG: objcopy
#objcopy: -w -W !foo -W fo*
#source: symbols.s
-#DUMPPROG: nm
#nm: -n
#...
#PROG: objcopy
#objcopy: -w -W !foo -W fo* -L foo
#source: symbols.s
-#DUMPPROG: nm
#nm: -n
#...
#PROG: objcopy
#objcopy: -w -W !foo -W !bar -W *
#source: symbols.s
-#DUMPPROG: nm
#nm: -n
#...
+2018-09-15 Alan Modra <amodra@gmail.com>
+
+ * testsuite/gas/mri/char.d: Don't objcopy to srec, objdump instead.
+ * testsuite/gas/mri/float.d: Likewise.
+ * testsuite/lib/gas-defs.exp (run_dump_test): Remove support
+ for objcopy as a dump tool.
+
2018-09-14 H.J. Lu <hongjiu.lu@intel.com>
PR gas/23642
-#objcopy: -O srec
#name: MRI character constants
#as: -M
+#objdump: -s
-# Test MRI character constants
+.*: file format .*
-S0.*
-S113....(61616263616263646500000061276200)|(61616263646362610000006500622761).*
-#pass
+Contents of section \.text:
+
+ 0+0 (61616263 61626364 65000000 61276200)|(61616263 64636261 00000065 00622761) .*
-#objcopy: -O srec
#name: MRI floating point constants
#as: -M
+#objdump: -s
-# Test MRI floating point constants
+.*: file format .*
-S0.*
-S113....(123456789ABCDEF03F80000041200000)|(F0DEBC9A785634120000803F00002041).*
-S10.....(4120000042C80000)|(000020410000C842).*
-#pass
+Contents of section \.text:
+ 0+00 (12345678 9abcdef0 3f800000 41200000)|(f0debc9a 78563412 0000803f 00002041) .*
+ 0+10 (41200000 42c80000)|(000020 410000c842) .*
#
# addr2line: FLAGS
# nm: FLAGS
-# objcopy: FLAGS
# objdump: FLAGS
# readelf: FLAGS
# Use the specified program to analyze the .o file, and pass it
# FLAGS, in addition to the .o file name. Note that they are run
# with LC_ALL=C in the environment to give consistent sorting
# of symbols. If no FLAGS are needed then use:
-# PROG: [nm objcopy objdump readelf addr2line]
+# PROG: [nm objdump readelf addr2line]
# instead.
# Note: for objdump, we automatically replaces the standard section
# names (.text, .data and .bss) by target ones if any (eg. rx-elf
#
# error: REGEX
# An error with message matching REGEX must be emitted for the test
-# to pass. The PROG, objdump, nm and objcopy options have no
-# meaning and need not supplied if this is present.
+# to pass. The PROG, addr2line, nm, objdump, and readelf options
+# have no meaning and need not supplied if this is present.
#
# warning: REGEX
# Expect a gas warning matching REGEX. It is an error to issue
# stderr: FILE
# FILE contains regexp lines to be matched against the diagnostic
# output of the assembler. This does not preclude the use of
-# PROG, nm, objdump, or objcopy.
+# PROG, addr2line, nm, objdump, or readelf.
#
# error-output: FILE
# Means the same as 'stderr', but also indicates that the assembler
-# is expected to exit unsuccessfully (therefore PROG, objdump, nm,
-# and objcopy have no meaning and should not be supplied).
+# is expected to exit unsuccessfully (therefore PROG, addr2line, nm,
+# objdump, and readelf have no meaning and should not be supplied).
#
# section-subst: no
# Means that the section substitution for objdump is disabled.
set opts(as) {}
set opts(objdump) {}
set opts(nm) {}
- set opts(objcopy) {}
set opts(readelf) {}
set opts(name) {}
set opts(PROG) {}
addr2line { set program addr2line }
objdump { set program objdump }
nm { set program nm }
- objcopy { set program objcopy }
readelf { set program readelf }
default {
perror "unrecognized program option $opts(PROG) in $file.d"
}
} else {
# Guess which program to run, by seeing which option was specified.
- foreach p {objdump objcopy nm readelf addr2line} {
+ foreach p {objdump nm readelf addr2line} {
if {$opts($p) != ""} {
if {$program != ""} {
perror "ambiguous dump program in $file.d"
if { $progopts1 == "" } { set $progopts1 "-r" }
verbose "running $binary $progopts $progopts1" 3
- # Objcopy, unlike the other two, won't send its output to stdout,
- # so we have to run it specially.
set cmd "$binary $progopts $progopts1 dump.o"
set redir ">dump.out"
- if { $program == "objcopy" } {
- set cmd "$binary $progopts $progopts1 dump.o dump.out"
- set redir ""
- }
-
send_log "$cmd\n"
set status [gas_host_run "$cmd" "$redir"]
set comp_output [prune_warnings [lindex $status 1]]
+2018-09-15 Alan Modra <amodra@gmail.com>
+
+ * testsuite/ld-elf/interleave-0.d,
+ * testsuite/ld-elf/interleave-4.d: Don't objcopy to srec,
+ objdump instead.
+ * testsuite/ld-gc/all-debug-sections.d,
+ * testsuite/ld-scripts/provide-4.d,
+ * testsuite/ld-scripts/provide-5.d,
+ * testsuite/ld-scripts/provide-6.d,
+ * testsuite/ld-scripts/provide-7.d,
+ * testsuite/ld-scripts/provide-8.d,
+ * testsuite/ld-scripts/segment-start.d: Remove PROG, specify
+ nm instead.
+ * testsuite/lib/ld-lib.exp (run_dump_test): Remove support
+ for objcopy as a dump tool.
+
2018-09-14 Maciej W. Rozycki <macro@mips.com>
PR ld/21375
#name: --interleave test byte 0
#source: interleave.s
#ld: -Tinterleave.ld
-#objcopy: --interleave=8 --interleave-width=1 --byte=0 -O verilog
+#objcopy_linked_file: --interleave=8 --interleave-width=1 --byte=0
+#objdump: -s
-@0+0
-00
-@0+2
-14
+.*: file format .*
+
+Contents of section \.a0:
+ 0+0 00 .*
+Contents of section \.a1:
+ 0+c 14 .*
#name: --interleave test byte 4
#source: interleave.s
#ld: -Tinterleave.ld
-#objcopy: --interleave=8 --interleave-width=1 --byte=4 -O verilog
+#objcopy_linked_file: --interleave=8 --interleave-width=1 --byte=4
+#objdump: -s
-@0+0
-04
-@0+1
-10
+.*: file format .*
+
+Contents of section \.a0:
+ 0+0 04 .*
+Contents of section \.a1:
+ 0+c 10 .*
#name: --gc-sections with multiple debug sections for a function section
#as: -gdwarf-sections
#ld: --gc-sections -e _start
-#PROG: nm
+#nm: -B
#...
[0-9a-f]+ N +debug_aranges_main
#source: provide-2.s
#ld: -T provide-4.t
-#PROG: nm
+#nm: -B
#map: provide-4.map
#...
0+3 A baz
#source: provide-5.s
#ld: -T provide-5.t
-#PROG: nm
+#nm: -B
#map: provide-5.map
#...
0+10 A foo
#source: provide-5.s
#ld: -T provide-6.t
-#PROG: nm
+#nm: -B
#xfail: x86_64-*-cygwin
#...
#source: provide-5.s
#ld: -T provide-7.t
-#PROG: nm
+#nm: -B
#...
0+10 A foo
#source: provide-5.s
#ld: -T provide-8.t
-#PROG: nm
+#nm: -B
#xfail: x86_64-*-cygwin mmix-*-* sh-*-pe spu-*-*
#...
-#PROG: nm
#name: SEGMENT_START expression not absolute
#source: segment-start.s
#ld: -e 0 -u __executable_start -T segment-start.ld
+#nm: -B
#xfail: mmix-*-* pdp11-*-* powerpc-*-aix* powerpc-*-beos* rs6000-*-* sh-*-pe
#xfail: c30-*-*aout* tic30-*-*aout* c54x*-*-*coff* tic54x-*-*coff*
# XFAIL targets that are not expected to handle SEGMENT_START correctly.
# readelf: FLAGS
# objdump: FLAGS
# nm: FLAGS
-# objcopy: FLAGS
# Use the specified program to analyze the assembler or linker
# output file, and pass it FLAGS, in addition to the output name.
# Note that they are run with LC_ALL=C in the environment to give
#
# error: REGEX
# An error with message matching REGEX must be emitted for the test
-# to pass. The PROG, readelf, objdump, nm and objcopy options have
+# to pass. The PROG, readelf, objdump, and nm options have
# no meaning and need not be supplied if this is present. Multiple
# "error" directives append to the expected linker error message.
#
set opts(noskip) {}
set opts(objdump) {}
set opts(nm) {}
- set opts(objcopy) {}
set opts(readelf) {}
set opts(name) {}
set opts(PROG) {}
switch -- $opts(PROG) {
objdump { set program objdump }
nm { set program nm }
- objcopy { set program objcopy }
readelf { set program readelf }
default
{ perror "unrecognized program option $opts(PROG) in $file.d"
}
} else {
# Guess which program to run, by seeing which option was specified.
- foreach p {objdump objcopy nm readelf} {
+ foreach p {objdump nm readelf} {
if {$opts($p) != ""} {
if {$program != ""} {
perror "ambiguous dump program in $file.d"
if { $progopts1 == "" } { set $progopts1 "-r" }
verbose "running $binary $progopts $progopts1" 3
-
- # Objcopy, unlike the other two, won't send its output to stdout,
- # so we have to run it specially.
set cmd "$binary $progopts $progopts1 $objfile > $dumpfile"
- if { $program == "objcopy" } {
- set cmd "$binary $progopts $progopts1 $objfile $dumpfile"
- }
# Ensure consistent sorting of symbols
if {[info exists env(LC_ALL)]} {