diff options
author | Jan Beulich <jbeulich@novell.com> | 2004-12-16 13:23:22 +0000 |
---|---|---|
committer | Jan Beulich <jbeulich@novell.com> | 2004-12-16 13:23:22 +0000 |
commit | 7a6d0b32af1797bcf3713165118d98f15e6c6a82 (patch) | |
tree | b1c87e7a6f7c7c4476e304a1dae17901907bdea7 /gas/testsuite | |
parent | bcf32829aff66021b9309b1f738d54f24dfa6a8e (diff) | |
download | gdb-7a6d0b32af1797bcf3713165118d98f15e6c6a82.zip gdb-7a6d0b32af1797bcf3713165118d98f15e6c6a82.tar.gz gdb-7a6d0b32af1797bcf3713165118d98f15e6c6a82.tar.bz2 |
gas/
2004-12-15 Jan Beulich <jbeulich@novell.com>
* config/obj-elf.c (obj_elf_change_section): Only set type and
attributes on new sections. Emit warning when type of re-declared
section doesn't match.
gas/testsuite/
2004-12-15 Jan Beulich <jbeulich@novell.com>
* gas/elf/section5.[els]: New.
Diffstat (limited to 'gas/testsuite')
-rw-r--r-- | gas/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gas/testsuite/gas/elf/elf.exp | 13 | ||||
-rw-r--r-- | gas/testsuite/gas/elf/section5.e | 8 | ||||
-rw-r--r-- | gas/testsuite/gas/elf/section5.l | 37 | ||||
-rw-r--r-- | gas/testsuite/gas/elf/section5.s | 24 |
5 files changed, 80 insertions, 6 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index eee9203..56c056e 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2004-12-15 Jan Beulich <jbeulich@novell.com> + + * gas/elf/section5.[els]: New. + 2004-12-13 Richard Sandiford <rsandifo@redhat.com> * gas/mips/elf-rel25.d, gas/mips/elf-rel25a.d: Cope with different diff --git a/gas/testsuite/gas/elf/elf.exp b/gas/testsuite/gas/elf/elf.exp index 376c204..17acefd 100644 --- a/gas/testsuite/gas/elf/elf.exp +++ b/gas/testsuite/gas/elf/elf.exp @@ -2,7 +2,7 @@ # elf tests # -proc run_list_test { name suffix opts readelf_pipe } { +proc run_list_test { name suffix opts readelf_opts readelf_pipe } { global READELF global srcdir subdir set testname "elf $name list" @@ -14,8 +14,8 @@ proc run_list_test { name suffix opts readelf_pipe } { verbose "output is [file_contents "dump.out"]" 2 return } - send_log "$READELF -s dump.o > dump.out\n" - catch "exec $READELF -s dump.o $readelf_pipe > dump.out\n" comp_output + send_log "$READELF $readelf_opts dump.o $readelf_pipe > dump.out\n" + catch "exec $READELF $readelf_opts dump.o $readelf_pipe > dump.out\n" comp_output if ![string match "" $comp_output] then { send_log "$comp_output\n" fail $testname @@ -57,9 +57,10 @@ if { ([istarget "*-*-*elf*"] run_dump_test "group1b" run_dump_test "section0" run_dump_test "section1" - run_list_test "section2" "$target_machine" "-al" "" - run_dump_test "section3" + run_list_test "section2" "$target_machine" "-al" "-s" "" + run_dump_test "section3" run_dump_test "section4" + run_list_test "section5" "" "-al" "-SW" "| grep \"\\\\.test\\\[\\\[:digit:\\\]\\\]\"" run_dump_test "symver" - run_list_test "type" "" "" "| grep \"1 \\\[FONT\\\]\"" + run_list_test "type" "" "" "-s" "| grep \"1 \\\[FONT\\\]\"" } diff --git a/gas/testsuite/gas/elf/section5.e b/gas/testsuite/gas/elf/section5.e new file mode 100644 index 0000000..f1c4f7a --- /dev/null +++ b/gas/testsuite/gas/elf/section5.e @@ -0,0 +1,8 @@ +.* \.test0[ ]+PROGBITS[ ]+([[:xdigit:]]+[ ]+){4}[ ]+[[:digit:]]+.* +.* \.test1[ ]+PROGBITS[ ]+([[:xdigit:]]+[ ]+){4}[ ]+[[:digit:]]+.* +.* \.rela?\.test1[ ]+RELA?[ ]+.* +.* \.test2[ ]+PROGBITS[ ]+([[:xdigit:]]+[ ]+){4}[ ]+[[:digit:]]+.* +.* \.rela?\.test2[ ]+RELA?[ ]+.* +.* \.test3[ ]+PROGBITS[ ]+([[:xdigit:]]+[ ]+){4}WA[ ]+[[:digit:]]+.* +.* \.rela?\.test3[ ]+RELA?[ ]+.* +.* \.test4[ ]+NOBITS[ ]+([[:xdigit:]]+[ ]+){4}WA[ ]+[[:digit:]]+.* diff --git a/gas/testsuite/gas/elf/section5.l b/gas/testsuite/gas/elf/section5.l new file mode 100644 index 0000000..76e9e4f --- /dev/null +++ b/gas/testsuite/gas/elf/section5.l @@ -0,0 +1,37 @@ +.*: Assembler messages: +.*:7: Warning: .* +.*:7: Warning: .* +.*:10: Warning: .* +.*:13: Warning: .* +.*:16: Warning: .* +.*:18: Warning: .* +.*:20: Warning: .* +.*:22: Warning: .* +.*:24: Warning: .* +.*GAS.* + + +[ ]+[[:digit:]]+[ ]+.section[ ]+.test0[ ]* +[ ]+[[:digit:]]+[ ]+.section[ ]+.test1,[ ]*"",[ ]*@progbits[ ]* +[ ]+[[:digit:]]+[ ]+.section[ ]+.test2[ ]* +[ ]+[[:digit:]]+[ ]+.section[ ]+.test3,[ ]*"aw"[ ]* +[ ]+[[:digit:]]+[ ]+.section[ ]+.test4,[ ]*"aw",[ ]*@nobits[ ]* +[ ]+[[:digit:]]+[ ]* +[ ]+[[:digit:]]+[ ]+.section[ ]+.test1,[ ]*"aw",[ ]*@nobits[ ]* +[ ]+[[:digit:]]+[ ]+.* +[ ]+[[:digit:]]+[ ]* +[ ]+[[:digit:]]+[ ]+.section[ ]+.test2,[ ]*"w"[ ]* +[ ]+[[:digit:]]+[ ]+.* +[ ]+[[:digit:]]+[ ]* +[ ]+[[:digit:]]+[ ]+.section[ ]+.test3,[ ]*"aw",[ ]*@progbits[ ]* +[ ]+[[:digit:]]+[ ]+.* +[ ]+[[:digit:]]+[ ]* +[ ]+[[:digit:]]+[ ]+.section[ ]+.test4,[ ]*"aw"[ ]* +[ ]+[[:digit:]]+[ ]* +[ ]+[[:digit:]]+[ ]+.section[ ]+.data,[ ]*"a"[ ]* +[ ]+[[:digit:]]+[ ]* +[ ]+[[:digit:]]+[ ]+.section[ ]+.bss,[ ]*"a"[ ]* +[ ]+[[:digit:]]+[ ]* +[ ]+[[:digit:]]+[ ]+.section[ ]+.data,[ ]*"aw",[ ]*@nobits[ ]* +[ ]+[[:digit:]]+[ ]* +[ ]+[[:digit:]]+[ ]+.section[ ]+.bss,[ ]*"aw",[ ]*@progbits[ ]* diff --git a/gas/testsuite/gas/elf/section5.s b/gas/testsuite/gas/elf/section5.s new file mode 100644 index 0000000..866af52 --- /dev/null +++ b/gas/testsuite/gas/elf/section5.s @@ -0,0 +1,24 @@ +.section .test0 +.section .test1, "", @progbits +.section .test2 +.section .test3, "aw" +.section .test4, "aw", @nobits + +.section .test1, "aw", @nobits +test1: .long test1 + +.section .test2, "w" +test2: .long test2 + +.section .test3, "aw", @progbits +test3: .long test3 + +.section .test4, "aw" + +.section .data, "a" + +.section .bss, "a" + +.section .data, "aw", @nobits + +.section .bss, "aw", @progbits |