From dda688fcaded180ed085149805931a977244e8d7 Mon Sep 17 00:00:00 2001 From: Thiemo Seufer Date: Sat, 25 Aug 2001 00:48:49 +0000 Subject: [PATCH] * binutils-all/readelf.exp: Don't regard mips*el-*-* as traditional mips. * gas/mips/mips.exp: Likewise. Use traditional testcases for mips${el}16-f if needed. * gas/mips/elempic.d: New file, testcase for little endian empic. * gas/mips/elfel-rel2.d: Don't test trailing zeroes in dump. * gas/mips/mips16-f.d: Use non-traditional symbol sorting. * gas/mips/mipsel16-f.d: Likewise. * gas/mips/mipsel16-e.d: New file, testcase for little endian MIPS16 relocations. * gas/mips/tmipsel16-f.d: New file, testcase for little endian MIPS16 relocations, traditional variant. --- binutils/testsuite/binutils-all/readelf.exp | 2 +- gas/testsuite/ChangeLog | 15 +++ gas/testsuite/gas/mips/elempic.d | 152 ++++++++++++++++++++++++++++ gas/testsuite/gas/mips/elfel-rel2.d | 2 +- gas/testsuite/gas/mips/mips.exp | 4 +- gas/testsuite/gas/mips/mips16-f.d | 2 +- gas/testsuite/gas/mips/mipsel16-e.d | 42 ++++++++ gas/testsuite/gas/mips/mipsel16-f.d | 2 +- gas/testsuite/gas/mips/tmipsel16-f.d | 34 +++++++ 9 files changed, 249 insertions(+), 6 deletions(-) create mode 100644 gas/testsuite/gas/mips/elempic.d create mode 100644 gas/testsuite/gas/mips/mipsel16-e.d create mode 100644 gas/testsuite/gas/mips/tmipsel16-f.d diff --git a/binutils/testsuite/binutils-all/readelf.exp b/binutils/testsuite/binutils-all/readelf.exp index a9a7465..c56fef7 100644 --- a/binutils/testsuite/binutils-all/readelf.exp +++ b/binutils/testsuite/binutils-all/readelf.exp @@ -192,7 +192,7 @@ proc readelf_test { options binary_file regexp_file xfails } { set target_machine "" if [istarget "mips*-*-*"] then { - if { [istarget mips*el-*-*] || [istarget "mips*-*-*linux*"] } then { + if { [istarget "mips*-*-*linux*"] } then { set target_machine tmips } else { set target_machine mips diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index f83640f..34d24dc 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,18 @@ +2001-08-24 Thiemo Seufer + + * binutils-all/readelf.exp: Don't regard mips*el-*-* as traditional + mips. + * gas/mips/mips.exp: Likewise. Use traditional testcases for + mips${el}16-f if needed. + * gas/mips/elempic.d: New file, testcase for little endian empic. + * gas/mips/elfel-rel2.d: Don't test trailing zeroes in dump. + * gas/mips/mips16-f.d: Use non-traditional symbol sorting. + * gas/mips/mipsel16-f.d: Likewise. + * gas/mips/mipsel16-e.d: New file, testcase for little endian MIPS16 + relocations. + * gas/mips/tmipsel16-f.d: New file, testcase for little endian MIPS16 + relocations, traditional variant. + 2001-08-17 H.J. Lu * gas/sparc/unalign.d: Support Sparc V9. diff --git a/gas/testsuite/gas/mips/elempic.d b/gas/testsuite/gas/mips/elempic.d new file mode 100644 index 0000000..05d8ee0 --- /dev/null +++ b/gas/testsuite/gas/mips/elempic.d @@ -0,0 +1,152 @@ +#objdump: -rst -mmips:4000 +#name: MIPS empic +#as: -membedded-pic -mips3 +#source: empic.s + +# Check GNU-specific embedded relocs, for ELF. + +.*: +file format elf.*mips.* + +SYMBOL TABLE: +0+0000000 l d \.text 0+0000000 +0+0000000 l d \.data 0+0000000 +0+0000000 l d \.bss 0+0000000 +0+0000000 l d \.foo 0+0000000 +0+0000000 l d \.reginfo 0+0000000 +0+0000000 l d \.(mdebug|pdr) 0+0000000 +0+0000004 l \.text 0+0000000 l2 +0+0000000 \*UND\* 0+0000000 g1 +0+0000000 \*UND\* 0+0000000 g2 +0+0000100 l \.foo 0+0000000 l1 +0+0000034 l \.text 0+0000000 l3 +0+0000098 l \.text 0+0000000 l5 +0+0000004 l \.foo 0+0000000 l4 + + +RELOCATION RECORDS FOR \[\.text\]: +OFFSET [ ]+ TYPE VALUE +0+0000004 R_MIPS_GNU_REL16_S2 g1 +0+000000c R_MIPS_GNU_REL16_S2 g2 +0+0000014 R_MIPS_GNU_REL16_S2 g2 +0+000001c R_MIPS_GNU_REL16_S2 \.foo +0+0000024 R_MIPS_GNU_REL16_S2 \.text +0+000002c R_MIPS_GNU_REL16_S2 \.foo +0+0000034 R_MIPS_GNU_REL16_S2 \.text +0+000003c R_MIPS_GNU_REL_HI16 g1 +0+0000040 R_MIPS_GNU_REL_LO16 g1 +0+0000044 R_MIPS_GNU_REL_HI16 \.foo +0+0000048 R_MIPS_GNU_REL_LO16 \.foo +0+0000050 R_MIPS_32 g1 +0+0000054 R_MIPS_32 \.foo +0+0000058 R_MIPS_32 \.text +0+000005c R_MIPS_PC32 g1 +0+0000060 R_MIPS_PC32 \.foo +0+0000068 R_MIPS_64 g1 +0+0000070 R_MIPS_64 \.foo +0+0000078 R_MIPS_64 \.text +0+0000080 R_MIPS_PC64 g1 +0+0000088 R_MIPS_PC64 \.foo +0+0000098 R_MIPS_GNU_REL16_S2 \.text +0+000009c R_MIPS_GNU_REL16_S2 \.text +0+00000a0 R_MIPS_GNU_REL_HI16 \.text +0+00000a4 R_MIPS_GNU_REL_LO16 \.text +0+00000a8 R_MIPS_GNU_REL_HI16 \.text +0+00000ac R_MIPS_GNU_REL_LO16 \.text +0+00000b0 R_MIPS_32 \.text +0+00000b8 R_MIPS_64 \.text +0+00000cc R_MIPS_GNU_REL16_S2 \.text +0+00000d0 R_MIPS_GNU_REL16_S2 \.text +0+00000dc R_MIPS_32 \.text +0+00000e8 R_MIPS_64 \.text + + +RELOCATION RECORDS FOR \[\.foo\]: +OFFSET [ ]+ TYPE VALUE +0+0000004 R_MIPS_GNU_REL_HI16 g1 +0+0000008 R_MIPS_GNU_REL_LO16 g1 +0+000000c R_MIPS_GNU_REL_HI16 \.foo +0+0000010 R_MIPS_GNU_REL_LO16 \.foo +0+0000014 R_MIPS_GNU_REL_HI16 \.text +0+0000018 R_MIPS_GNU_REL_LO16 \.text +0+000001c R_MIPS_GNU_REL_HI16 g1 +0+0000020 R_MIPS_GNU_REL_LO16 g1 +0+0000024 R_MIPS_GNU_REL_HI16 g1 +0+0000028 R_MIPS_GNU_REL_LO16 g1 +0+000002c R_MIPS_GNU_REL_HI16 \.foo +0+0000030 R_MIPS_GNU_REL_LO16 \.foo +0+0000034 R_MIPS_GNU_REL_HI16 \.text +0+0000038 R_MIPS_GNU_REL_LO16 \.text +0+000003c R_MIPS_32 g1 +0+0000040 R_MIPS_32 \.foo +0+0000044 R_MIPS_32 \.text +0+0000048 R_MIPS_PC32 g1 +0+0000050 R_MIPS_PC32 \.text +0+0000058 R_MIPS_64 g1 +0+0000060 R_MIPS_64 \.foo +0+0000068 R_MIPS_64 \.text +0+0000070 R_MIPS_PC64 g1 +0+0000080 R_MIPS_PC64 \.text +0+0000088 R_MIPS_GNU_REL_HI16 g1 +0+000008c R_MIPS_GNU_REL_LO16 g1 +0+0000090 R_MIPS_GNU_REL_HI16 \.foo +0+0000094 R_MIPS_GNU_REL_LO16 \.foo +0+0000098 R_MIPS_GNU_REL_HI16 \.text +0+000009c R_MIPS_GNU_REL_LO16 \.text +0+00000a0 R_MIPS_GNU_REL_HI16 g1 +0+00000a4 R_MIPS_GNU_REL_LO16 g1 +0+00000a8 R_MIPS_GNU_REL_HI16 \.foo +0+00000ac R_MIPS_GNU_REL_LO16 \.foo +0+00000b0 R_MIPS_GNU_REL_HI16 \.text +0+00000b4 R_MIPS_GNU_REL_LO16 \.text +0+00000b8 R_MIPS_32 g1 +0+00000bc R_MIPS_32 \.foo +0+00000c0 R_MIPS_32 \.text +0+00000c4 R_MIPS_PC32 g1 +0+00000cc R_MIPS_PC32 \.text +0+00000d0 R_MIPS_64 g1 +0+00000d8 R_MIPS_64 \.foo +0+00000e0 R_MIPS_64 \.text +0+00000e8 R_MIPS_PC64 g1 +0+00000f8 R_MIPS_PC64 \.text + +Contents of section \.text: + 0000 00000000 ffff1104 00000000 ffff0010 .* + 0010 00000000 ffff0010 00000000 3f001104 .* + 0020 00000000 00001104 00000000 41000010 .* + 0030 00000000 00000010 00000000 0000033c .* + 0040 0c0063[26]4 0000033c 140163[26]4 d0ff0324 .* + 0050 00000000 00010000 04000000 28000000 .* + 0060 2c010000 d0ffffff 00000000 00000000 .* + 0070 00010000 00000000 04000000 00000000 .* + 0080 4c000000 00000000 54010000 00000000 .* + 0090 d0ffffff ffffffff 32000010 33000010 .* + 00a0 0000033c d8006364 0000033c e8006364 .* + 00b0 cc000000 34000000 cc000000 00000000 .* + 00c0 34000000 00000000 00000000 32000010 .* + 00d0 33000010 34000324 3c000324 cc000000 .* + 00e0 34000000 00000000 cc000000 00000000 .* + 00f0 34000000 00000000 00000000 00000000 .* +Contents of section \.data: +Contents of section \.reginfo: + 0000 08000080 00000000 00000000 00000000 .* + 0010 00000000 00000000 .* +Contents of section \.(mdebug|pdr): +#... +Contents of section \.foo: + 0000 00000000 0000033c 040063[26]4 0000033c .* + 0010 0c0163[26]4 0000033c 180063[26]4 0000033c .* + 0020 1c0063[26]4 0000033c 240063[26]4 0000033c .* + 0030 2c0163[26]4 0000033c 380063[26]4 00000000 .* + 0040 00010000 04000000 44000000 fc000000 .* + 0050 50000000 00000000 00000000 00000000 .* + 0060 00010000 00000000 04000000 00000000 .* + 0070 6c000000 00000000 fc000000 00000000 .* + 0080 80000000 00000000 0000033c 8c0063[26]4 .* + 0090 0000033c 940163[26]4 0000033c a00063[26]4 .* + 00a0 0000033c a40063[26]4 0000033c ac0163[26]4 .* + 00b0 0000033c b80063[26]4 04000000 04010000 .* + 00c0 08000000 c4000000 00010000 d0000000 .* + 00d0 04000000 00000000 04010000 00000000 .* + 00e0 08000000 00000000 e8000000 00000000 .* + 00f0 00010000 00000000 fc000000 00000000 .* + 0100 00000000 00000000 00000000 00000000 .* diff --git a/gas/testsuite/gas/mips/elfel-rel2.d b/gas/testsuite/gas/mips/elfel-rel2.d index 9e16c94..4efb493 100644 --- a/gas/testsuite/gas/mips/elfel-rel2.d +++ b/gas/testsuite/gas/mips/elfel-rel2.d @@ -24,4 +24,4 @@ OFFSET [ ]+ TYPE VALUE Contents of section \.text: 0000 00c082d7 08c082d7 10c082d7 00c082c7 .* 0010 04c082c7 08c082c7 00c0828f 04c0828f .* - 0020 08c0828f 00000000 00000000 00000000 .* + 0020 08c0828f .* diff --git a/gas/testsuite/gas/mips/mips.exp b/gas/testsuite/gas/mips/mips.exp index 0263008..d4b771c 100644 --- a/gas/testsuite/gas/mips/mips.exp +++ b/gas/testsuite/gas/mips/mips.exp @@ -24,7 +24,7 @@ if { [istarget mips*-*-*] } then { set gpr_ilocks [expr [istarget mipstx39*-*-*]] set addr32 [expr [istarget mipstx39*-*-*]] - if { [istarget mips*el-*-*] || [istarget "mips*-*-*linux*"] } then { + if { [istarget "mips*-*-*linux*"] } then { set tmips "t" } else { set tmips "" @@ -161,7 +161,7 @@ if { [istarget mips*-*-*] } then { run_dump_test "${tmips}${el}empic" if { !$no_mips16 } { run_dump_test "${tmips}mips${el}16-e" - run_dump_test "mips${el}16-f" + run_dump_test "${tmips}mips${el}16-f" } } } diff --git a/gas/testsuite/gas/mips/mips16-f.d b/gas/testsuite/gas/mips/mips16-f.d index ec39651..3f9d616 100644 --- a/gas/testsuite/gas/mips/mips16-f.d +++ b/gas/testsuite/gas/mips/mips16-f.d @@ -10,10 +10,10 @@ SYMBOL TABLE: 0+0000000 l d \.text 0+0000000 0+0000000 l d \.data 0+0000000 0+0000000 l d \.bss 0+0000000 -0+0000002 l \.text 0+0000000 0xf0 l1 0+0000000 l d foo 0+0000000 0+0000000 l d \.reginfo 0+0000000 0+0000000 l d \.(mdebug|pdr) 0+0000000 +0+0000002 l \.text 0+0000000 0xf0 l1 RELOCATION RECORDS FOR \[foo\]: diff --git a/gas/testsuite/gas/mips/mipsel16-e.d b/gas/testsuite/gas/mips/mipsel16-e.d new file mode 100644 index 0000000..7ac7e13 --- /dev/null +++ b/gas/testsuite/gas/mips/mipsel16-e.d @@ -0,0 +1,42 @@ +#objdump: -rst -mips16 +#name: MIPS16 reloc +#as: -mips16 +#source: mips16-e.s + +# Check MIPS16 reloc processing + +.*: +file format elf.*mips.* + +SYMBOL TABLE: +0+0000000 l d \.text 0+0000000 +0+0000000 l d \.data 0+0000000 +0+0000000 l d \.bss 0+0000000 +0+0000000 l d foo 0+0000000 +0+0000000 l d \.reginfo 0+0000000 +0+0000000 l d \.(mdebug|pdr) 0+0000000 +0+0000002 l \.text 0+0000000 0xf0 l1 +0+0000004 l \.text 0+0000000 0xf0 L1.1 +0+0000000 \*UND\* 0+0000000 g1 + + +RELOCATION RECORDS FOR \[foo\]: +OFFSET [ ]+ TYPE VALUE +0+0000000 R_MIPS_32 l1 +0+0000004 R_MIPS_32 l1 +0+0000008 R_MIPS_32 L1.1 +0+000000c R_MIPS_32 L1.1 +0+0000010 R_MIPS_32 g1 +0+0000014 R_MIPS_32 g1 + + +Contents of section \.text: + 0000 00650065 00650065 00650065 00650065 .* +Contents of section \.data: +Contents of section \.reginfo: + 0000 01000000 00000000 00000000 00000000 .* + 0010 00000000 00000000 .* +Contents of section \.(mdebug|pdr): +#... +Contents of section foo: + 0000 00000000 08000000 00000000 03000000 .* + 0010 00000000 08000000 00000000 00000000 .* diff --git a/gas/testsuite/gas/mips/mipsel16-f.d b/gas/testsuite/gas/mips/mipsel16-f.d index 969d259..3247a7a 100644 --- a/gas/testsuite/gas/mips/mipsel16-f.d +++ b/gas/testsuite/gas/mips/mipsel16-f.d @@ -11,10 +11,10 @@ SYMBOL TABLE: 0+0000000 l d \.text 0+0000000 0+0000000 l d \.data 0+0000000 0+0000000 l d \.bss 0+0000000 -0+0000002 l \.text 0+0000000 0xf0 l1 0+0000000 l d foo 0+0000000 0+0000000 l d \.reginfo 0+0000000 0+0000000 l d \.(mdebug|pdr) 0+0000000 +0+0000002 l \.text 0+0000000 0xf0 l1 RELOCATION RECORDS FOR \[foo\]: diff --git a/gas/testsuite/gas/mips/tmipsel16-f.d b/gas/testsuite/gas/mips/tmipsel16-f.d new file mode 100644 index 0000000..969d259 --- /dev/null +++ b/gas/testsuite/gas/mips/tmipsel16-f.d @@ -0,0 +1,34 @@ +#objdump: -rst -mips16 +#name: MIPS16 reloc 2 +#as: -mips16 +#source: mips16-f.s + +# Check MIPS16 reloc processing + +.*: +file format elf.*mips.* + +SYMBOL TABLE: +0+0000000 l d \.text 0+0000000 +0+0000000 l d \.data 0+0000000 +0+0000000 l d \.bss 0+0000000 +0+0000002 l \.text 0+0000000 0xf0 l1 +0+0000000 l d foo 0+0000000 +0+0000000 l d \.reginfo 0+0000000 +0+0000000 l d \.(mdebug|pdr) 0+0000000 + + +RELOCATION RECORDS FOR \[foo\]: +OFFSET [ ]+ TYPE VALUE +0+0000000 R_MIPS_32 l1 + + +Contents of section \.text: + 0000 00650065 00650065 00650065 00650065 .* +Contents of section \.data: +Contents of section \.reginfo: + 0000 01000000 00000000 00000000 00000000 .* + 0010 00000000 00000000 .* +Contents of section \.(mdebug|pdr): +#... +Contents of section foo: + 0000 03000000 00000000 00000000 00000000 .* -- 2.7.4