aboutsummaryrefslogtreecommitdiff
path: root/gas/testsuite
diff options
context:
space:
mode:
authorRichard Sandiford <rdsandiford@googlemail.com>2003-02-21 10:28:27 +0000
committerRichard Sandiford <rdsandiford@googlemail.com>2003-02-21 10:28:27 +0000
commit64bdfcaf0d1a419402fe5cc8fcd0bafb92c6b5c7 (patch)
treec6567867d4be33505f8377c15b3851573c47296f /gas/testsuite
parent36f63dca98ecf5ff67d29eb43114c7061c777a2c (diff)
downloadgdb-64bdfcaf0d1a419402fe5cc8fcd0bafb92c6b5c7.zip
gdb-64bdfcaf0d1a419402fe5cc8fcd0bafb92c6b5c7.tar.gz
gdb-64bdfcaf0d1a419402fe5cc8fcd0bafb92c6b5c7.tar.bz2
* config/tc-mips.c (prev_reloc_op_frag): New variable.
(macro): Check it to decide whether a new frag is needed. (my_getSmallExpression): Set it.
Diffstat (limited to 'gas/testsuite')
-rw-r--r--gas/testsuite/ChangeLog5
-rw-r--r--gas/testsuite/gas/mips/elf-rel14.d18
-rw-r--r--gas/testsuite/gas/mips/elf-rel14.s10
-rw-r--r--gas/testsuite/gas/mips/mips.exp1
4 files changed, 34 insertions, 0 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index c9be2ed..58d8f0c 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2003-02-21 Richard Sandiford <rsandifo@redhat.com>
+
+ * gas/mips/elf-rel14.[sd]: New test.
+ * gas/mips/mips.exp: Run it.
+
2003-02-07 Richard Sandiford <rsandifo@redhat.com>
* gas/mips/rel12.[sd], gas/mips/rel13.[sd]: New tests.
diff --git a/gas/testsuite/gas/mips/elf-rel14.d b/gas/testsuite/gas/mips/elf-rel14.d
new file mode 100644
index 0000000..b6aec52
--- /dev/null
+++ b/gas/testsuite/gas/mips/elf-rel14.d
@@ -0,0 +1,18 @@
+#as: -march=mips1 -mabi=32 -KPIC
+#objdump: -M gpr-names=numeric -dr
+#name: MIPS ELF reloc 14
+
+.*: file format .*
+
+Disassembly of section \.text:
+
+0+00 <foo>:
+ 0: 8f840000 lw \$4,0\(\$28\)
+ 0: R_MIPS_CALL16 bar
+ 4: 8f850000 lw \$5,0\(\$28\)
+ 4: R_MIPS_GOT16 \.text
+ 8: 00000000 nop
+ c: 24a50014 addiu \$5,\$5,20
+ c: R_MIPS_LO16 \.text
+ 10: 24c60001 addiu \$6,\$6,1
+ \.\.\.
diff --git a/gas/testsuite/gas/mips/elf-rel14.s b/gas/testsuite/gas/mips/elf-rel14.s
new file mode 100644
index 0000000..2edd5b3
--- /dev/null
+++ b/gas/testsuite/gas/mips/elf-rel14.s
@@ -0,0 +1,10 @@
+ .ent foo
+foo:
+ lw $4,%call16(bar)($28)
+ la $5,.L1
+ # Insert an instruction that doesn't use $5 to avoid a spurious
+ # nop after the previous load macro.
+ addiu $6,$6,1
+.L1:
+ .space 32
+ .end foo
diff --git a/gas/testsuite/gas/mips/mips.exp b/gas/testsuite/gas/mips/mips.exp
index 9d950a4..eaf7d37 100644
--- a/gas/testsuite/gas/mips/mips.exp
+++ b/gas/testsuite/gas/mips/mips.exp
@@ -610,6 +610,7 @@ if { [istarget mips*-*-*] } then {
}
run_dump_test "elf-rel12"
run_dump_test "elf-rel13"
+ run_dump_test "elf-rel14"
run_dump_test "${tmips}${el}empic"
run_dump_test "empic2"
run_dump_test "empic3_e"