summaryrefslogtreecommitdiff
path: root/gas/testsuite/gas/mips/mips.exp
diff options
context:
space:
mode:
authorMaciej W. Rozycki <macro@imgtec.com>2016-12-23 12:37:40 +0000
committerMaciej W. Rozycki <macro@imgtec.com>2016-12-23 19:25:44 +0000
commit645c455650ed35460afdacb078c7c58308607fbe (patch)
treed66a2dabbdab362351439a0c92503d0b01543d54 /gas/testsuite/gas/mips/mips.exp
parent9e76c212e6311abaee4d02473473f7d6dcad972f (diff)
downloadbinutils-gdb-645c455650ed35460afdacb078c7c58308607fbe.tar.gz
MIPS16/GAS: Disallow EXTEND delay-slot scheduling
Do not allow any explicitly coded EXTEND instruction to be automatically scheduled into a jump delay slot, as an EXTEND prefix is coupled with the next regular MIPS16 instruction and therefore swapping it with a jump would change program's semantics; EXTEND is not architecturally allowed to be present in a jump delay slot anyway. opcodes/ * mips16-opc.c (mips16_opcodes): Set NODS in `pinfo' for "extend". gas/ * testsuite/gas/mips/mips16-extend-swap.d: New test. * testsuite/gas/mips/mips16-extend-swap.s: New test source. * testsuite/gas/mips/mips.exp: Run the new test.
Diffstat (limited to 'gas/testsuite/gas/mips/mips.exp')
-rw-r--r--gas/testsuite/gas/mips/mips.exp1
1 files changed, 1 insertions, 0 deletions
diff --git a/gas/testsuite/gas/mips/mips.exp b/gas/testsuite/gas/mips/mips.exp
index cd62e446ec9..c16891ad698 100644
--- a/gas/testsuite/gas/mips/mips.exp
+++ b/gas/testsuite/gas/mips/mips.exp
@@ -1341,6 +1341,7 @@ if { [istarget mips*-*-vxworks*] } {
run_list_test "mips16e-save-err" "-march=mips32 -32"
run_dump_test "mips16-intermix"
run_dump_test "mips16-extend"
+ run_dump_test "mips16-extend-swap"
run_dump_test "mips16-sprel-swap"
run_dump_test "mips16-sdrasp"