aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--binutils/testsuite/binutils-all/readelf.exp2
-rw-r--r--gas/testsuite/ChangeLog15
-rw-r--r--gas/testsuite/gas/mips/elempic.d152
-rw-r--r--gas/testsuite/gas/mips/elfel-rel2.d2
-rw-r--r--gas/testsuite/gas/mips/mips.exp4
-rw-r--r--gas/testsuite/gas/mips/mips16-f.d2
-rw-r--r--gas/testsuite/gas/mips/mipsel16-e.d42
-rw-r--r--gas/testsuite/gas/mips/mipsel16-f.d2
-rw-r--r--gas/testsuite/gas/mips/tmipsel16-f.d34
9 files changed, 249 insertions, 6 deletions
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 <seufer@csv.ica.uni-stuttgart.de>
+
+ * 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 <hjl@gnu.org>
* 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 .*