MIPS16: Fix SP-relative SD instruction annotation
authorMaciej W. Rozycki <macro@imgtec.com>
Wed, 14 Dec 2016 21:18:16 +0000 (21:18 +0000)
committerMaciej W. Rozycki <macro@imgtec.com>
Wed, 14 Dec 2016 22:04:39 +0000 (22:04 +0000)
commit353abf7c10561aab3e8e7ffce6e270c3743376f0
tree8c3e3381198a36dacbb46cd30ce3c774e7cc803b
parent63e014fccdd91a89873554f6b33d7128d7112813
MIPS16: Fix SP-relative SD instruction annotation

Fix the annotation of SP-relative SD instructions incorrectly marked as
reading from the PC rather than SP, which in turn prevented their 16-bit
forms from being scheduled into jump delay slots.  This bug has been
there since forever.

opcodes/
* mips16-opc.c (mips16_opcodes): Set RD_SP rather than RD_PC in
`pinfo2' with SP-relative "sd" entries.

gas/
* testsuite/gas/mips/mips16-sprel-swap.d: New test.
* testsuite/gas/mips/mips16-sprel-swap.s: New test source.
* testsuite/gas/mips/mips.exp: Run the new test.
gas/ChangeLog
gas/testsuite/gas/mips/mips.exp
gas/testsuite/gas/mips/mips16-sprel-swap.d [new file with mode: 0644]
gas/testsuite/gas/mips/mips16-sprel-swap.s [new file with mode: 0644]
opcodes/ChangeLog
opcodes/mips16-opc.c