aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Earnshaw <richard.earnshaw@arm.com>2012-12-20 16:19:53 +0000
committerRichard Earnshaw <richard.earnshaw@arm.com>2012-12-20 16:19:53 +0000
commitd709e4e6c73d646981ae1f1a8e42c35bab703f76 (patch)
tree8605ac4778b6dc526ae3f2972acfc70c3b92a48a
parent29f5339515927dd3928d88ce5d270f0ffda4bf3a (diff)
downloadgdb-d709e4e6c73d646981ae1f1a8e42c35bab703f76.zip
gdb-d709e4e6c73d646981ae1f1a8e42c35bab703f76.tar.gz
gdb-d709e4e6c73d646981ae1f1a8e42c35bab703f76.tar.bz2
2012-12-20 Greta Yorsh <Greta.Yorsh@arm.com>
* config/tc-arm.c (rfefa,rfeea,rfeed): Fix encoding. (rfe,srs,srsea,srsfa,srsed,srsfd): Add missing mnemonics. * gas/arm/srs-t2.s: Add tests for missing srs modes. * gas/arm/srs-t2.l: Update expected output. * gas/arm/srs-arm.s: Add tests for missing srs modes. * gas/arm/srs-arm.l: Update expected output. * gas/arm/archv6.s: Add tests for missing rfe modes. * gas/arm/archv6.d: Update expected output.
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/config/tc-arm.c12
-rw-r--r--gas/testsuite/ChangeLog21
-rw-r--r--gas/testsuite/gas/arm/archv6.d362
-rw-r--r--gas/testsuite/gas/arm/archv6.s18
-rw-r--r--gas/testsuite/gas/arm/srs-arm.l5
-rw-r--r--gas/testsuite/gas/arm/srs-arm.s16
-rw-r--r--gas/testsuite/gas/arm/srs-t2.l3
-rw-r--r--gas/testsuite/gas/arm/srs-t2.s9
9 files changed, 253 insertions, 198 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index eb6d172..b191924 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,8 @@
+2012-12-20 Greta Yorsh <Greta.Yorsh@arm.com>
+
+ * config/tc-arm.c (rfefa,rfeea,rfeed): Fix encoding.
+ (rfe,srs,srsea,srsfa,srsed,srsfd): Add missing mnemonics.
+
2012-12-17 Nick Clifton <nickc@redhat.com>
* CONTRIBUTORS: Add copyright notice.
diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c
index 2841abb..80c06dc 100644
--- a/gas/config/tc-arm.c
+++ b/gas/config/tc-arm.c
@@ -18189,17 +18189,23 @@ static const struct asm_opcode insns[] =
#undef THUMB_VARIANT
#define THUMB_VARIANT & arm_ext_v6_notm
TUF("rfeia", 8900a00, e990c000, 1, (RRw), rfe, rfe),
+ TUF("rfe", 8900a00, e990c000, 1, (RRw), rfe, rfe),
UF(rfeib, 9900a00, 1, (RRw), rfe),
UF(rfeda, 8100a00, 1, (RRw), rfe),
TUF("rfedb", 9100a00, e810c000, 1, (RRw), rfe, rfe),
TUF("rfefd", 8900a00, e990c000, 1, (RRw), rfe, rfe),
- UF(rfefa, 9900a00, 1, (RRw), rfe),
- UF(rfeea, 8100a00, 1, (RRw), rfe),
- TUF("rfeed", 9100a00, e810c000, 1, (RRw), rfe, rfe),
+ UF(rfefa, 8100a00, 1, (RRw), rfe),
+ TUF("rfeea", 9100a00, e810c000, 1, (RRw), rfe, rfe),
+ UF(rfeed, 9900a00, 1, (RRw), rfe),
TUF("srsia", 8c00500, e980c000, 2, (oRRw, I31w), srs, srs),
+ TUF("srs", 8c00500, e980c000, 2, (oRRw, I31w), srs, srs),
+ TUF("srsea", 8c00500, e980c000, 2, (oRRw, I31w), srs, srs),
UF(srsib, 9c00500, 2, (oRRw, I31w), srs),
+ UF(srsfa, 9c00500, 2, (oRRw, I31w), srs),
UF(srsda, 8400500, 2, (oRRw, I31w), srs),
+ UF(srsed, 8400500, 2, (oRRw, I31w), srs),
TUF("srsdb", 9400500, e800c000, 2, (oRRw, I31w), srs, srs),
+ TUF("srsfd", 9400500, e800c000, 2, (oRRw, I31w), srs, srs),
/* ARM V6 not included in V7M (eg. integer SIMD). */
#undef THUMB_VARIANT
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index 884e10f..fd9a378 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,11 +1,20 @@
+2012-12-19 Greta Yorsh <Greta.Yorsh@arm.com>
+
+ * gas/arm/srs-t2.s: Add tests for missing srs modes.
+ * gas/arm/srs-t2.l: Update expected output.
+ * gas/arm/srs-arm.s: Add tests for missing srs modes.
+ * gas/arm/srs-arm.l: Update expected output.
+ * gas/arm/archv6.s: Add tests for missing rfe modes.
+ * gas/arm/archv6.d: Update expected output.
+
2012-12-18 David Holsgrove <david.holsgrove@xilinx.com>
- * gas/microblaze/relax_size.exp: New file - test object size after linker
- relaxation
- * gas/microblaze/relax_size.s: Likewise
- * gas/microblaze/relax_size.elf: Likewise
- * gas/microblaze/relax_size2.s: Likewise
- * gas/microblaze/relax_size2.elf: Likewise
+ * gas/microblaze/relax_size.exp: New file - test object size after
+ linker relaxation.
+ * gas/microblaze/relax_size.s: Likewise.
+ * gas/microblaze/relax_size.elf: Likewise.
+ * gas/microblaze/relax_size2.s: Likewise.
+ * gas/microblaze/relax_size2.elf: Likewise.
2012-12-17 Nick Clifton <nickc@redhat.com>
diff --git a/gas/testsuite/gas/arm/archv6.d b/gas/testsuite/gas/arm/archv6.d
index 4f73a95..bee9909 100644
--- a/gas/testsuite/gas/arm/archv6.d
+++ b/gas/testsuite/gas/arm/archv6.d
@@ -39,185 +39,187 @@ Disassembly of section .text:
0+07c <[^>]*> e6ff2fb4 ? revsh r2, r4
0+080 <[^>]*> 16ff3fb5 ? revshne r3, r5
0+084 <[^>]*> f8120a00 ? rfeda r2
-0+088 <[^>]*> f9320a00 ? rfedb r2!
-0+08c <[^>]*> f8120a00 ? rfeda r2
+0+088 <[^>]*> f8320a00 ? rfeda r2!
+0+08c <[^>]*> f9120a00 ? rfedb r2
0+090 <[^>]*> f9320a00 ? rfedb r2!
-0+094 <[^>]*> f9b20a00 ? rfeib r2!
-0+098 <[^>]*> f8920a00 ? rfeia r2
-0+09c <[^>]*> f8920a00 ? rfeia r2
+0+094 <[^>]*> f8920a00 ? rfeia r2
+0+098 <[^>]*> f8b20a00 ? rfeia r2!
+0+09c <[^>]*> f9920a00 ? rfeib r2
0+0a0 <[^>]*> f9b20a00 ? rfeib r2!
-0+0a4 <[^>]*> e6142f17 ? sadd16 r2, r4, r7
-0+0a8 <[^>]*> 16142f17 ? sadd16ne r2, r4, r7
-0+0ac <[^>]*> e6b42075 ? sxtah r2, r4, r5
-0+0b0 <[^>]*> e6b42475 ? sxtah r2, r4, r5, ror #8
-0+0b4 <[^>]*> 16b42075 ? sxtahne r2, r4, r5
-0+0b8 <[^>]*> 16b42475 ? sxtahne r2, r4, r5, ror #8
-0+0bc <[^>]*> e6142f97 ? sadd8 r2, r4, r7
-0+0c0 <[^>]*> 16142f97 ? sadd8ne r2, r4, r7
-0+0c4 <[^>]*> e6842075 ? sxtab16 r2, r4, r5
-0+0c8 <[^>]*> e6842475 ? sxtab16 r2, r4, r5, ror #8
-0+0cc <[^>]*> 16842075 ? sxtab16ne r2, r4, r5
-0+0d0 <[^>]*> 16842475 ? sxtab16ne r2, r4, r5, ror #8
-0+0d4 <[^>]*> e6a42075 ? sxtab r2, r4, r5
-0+0d8 <[^>]*> e6a42475 ? sxtab r2, r4, r5, ror #8
-0+0dc <[^>]*> 16a42075 ? sxtabne r2, r4, r5
-0+0e0 <[^>]*> 16a42475 ? sxtabne r2, r4, r5, ror #8
-0+0e4 <[^>]*> e6142f37 ? sasx r2, r4, r7
-0+0e8 <[^>]*> 16142f37 ? sasxne r2, r4, r7
-0+0ec <[^>]*> e6821fb3 ? sel r1, r2, r3
-0+0f0 <[^>]*> 16821fb3 ? selne r1, r2, r3
-0+0f4 <[^>]*> f1010200 ? setend be
-0+0f8 <[^>]*> f1010000 ? setend le
-0+0fc <[^>]*> e6342f17 ? shadd16 r2, r4, r7
-0+100 <[^>]*> 16342f17 ? shadd16ne r2, r4, r7
-0+104 <[^>]*> e6342f97 ? shadd8 r2, r4, r7
-0+108 <[^>]*> 16342f97 ? shadd8ne r2, r4, r7
-0+10c <[^>]*> e6342f37 ? shasx r2, r4, r7
-0+110 <[^>]*> 16342f37 ? shasxne r2, r4, r7
-0+114 <[^>]*> e6342f77 ? shsub16 r2, r4, r7
-0+118 <[^>]*> 16342f77 ? shsub16ne r2, r4, r7
-0+11c <[^>]*> e6342ff7 ? shsub8 r2, r4, r7
-0+120 <[^>]*> 16342ff7 ? shsub8ne r2, r4, r7
-0+124 <[^>]*> e6342f57 ? shsax r2, r4, r7
-0+128 <[^>]*> 16342f57 ? shsaxne r2, r4, r7
-0+12c <[^>]*> e7014312 ? smlad r1, r2, r3, r4
-0+130 <[^>]*> d7014312 ? smladle r1, r2, r3, r4
-0+134 <[^>]*> e7014332 ? smladx r1, r2, r3, r4
-0+138 <[^>]*> d7014332 ? smladxle r1, r2, r3, r4
-0+13c <[^>]*> e7421413 ? smlald r1, r2, r3, r4
-0+140 <[^>]*> d7421413 ? smlaldle r1, r2, r3, r4
-0+144 <[^>]*> e7421433 ? smlaldx r1, r2, r3, r4
-0+148 <[^>]*> d7421433 ? smlaldxle r1, r2, r3, r4
-0+14c <[^>]*> e7014352 ? smlsd r1, r2, r3, r4
-0+150 <[^>]*> d7014352 ? smlsdle r1, r2, r3, r4
-0+154 <[^>]*> e7014372 ? smlsdx r1, r2, r3, r4
-0+158 <[^>]*> d7014372 ? smlsdxle r1, r2, r3, r4
-0+15c <[^>]*> e7421453 ? smlsld r1, r2, r3, r4
-0+160 <[^>]*> d7421453 ? smlsldle r1, r2, r3, r4
-0+164 <[^>]*> e7421473 ? smlsldx r1, r2, r3, r4
-0+168 <[^>]*> d7421473 ? smlsldxle r1, r2, r3, r4
-0+16c <[^>]*> e7514312 ? smmla r1, r2, r3, r4
-0+170 <[^>]*> d7514312 ? smmlale r1, r2, r3, r4
-0+174 <[^>]*> e7514332 ? smmlar r1, r2, r3, r4
-0+178 <[^>]*> d7514332 ? smmlarle r1, r2, r3, r4
-0+17c <[^>]*> e75143d2 ? smmls r1, r2, r3, r4
-0+180 <[^>]*> d75143d2 ? smmlsle r1, r2, r3, r4
-0+184 <[^>]*> e75143f2 ? smmlsr r1, r2, r3, r4
-0+188 <[^>]*> d75143f2 ? smmlsrle r1, r2, r3, r4
-0+18c <[^>]*> e751f312 ? smmul r1, r2, r3
-0+190 <[^>]*> d751f312 ? smmulle r1, r2, r3
-0+194 <[^>]*> e751f332 ? smmulr r1, r2, r3
-0+198 <[^>]*> d751f332 ? smmulrle r1, r2, r3
-0+19c <[^>]*> e701f312 ? smuad r1, r2, r3
-0+1a0 <[^>]*> d701f312 ? smuadle r1, r2, r3
-0+1a4 <[^>]*> e701f332 ? smuadx r1, r2, r3
-0+1a8 <[^>]*> d701f332 ? smuadxle r1, r2, r3
-0+1ac <[^>]*> e701f352 ? smusd r1, r2, r3
-0+1b0 <[^>]*> d701f352 ? smusdle r1, r2, r3
-0+1b4 <[^>]*> e701f372 ? smusdx r1, r2, r3
-0+1b8 <[^>]*> d701f372 ? smusdxle r1, r2, r3
-0+1bc <[^>]*> f8cd0510 ? srsia sp, #16
-0+1c0 <[^>]*> f9ed0510 ? srsib sp!, #16
-0+1c4 <[^>]*> e6a01012 ? ssat r1, #1, r2
-0+1c8 <[^>]*> e6a01152 ? ssat r1, #1, r2, asr #2
-0+1cc <[^>]*> e6a01112 ? ssat r1, #1, r2, lsl #2
-0+1d0 <[^>]*> e6a01f31 ? ssat16 r1, #1, r1
-0+1d4 <[^>]*> d6a01f31 ? ssat16le r1, #1, r1
-0+1d8 <[^>]*> e6142f77 ? ssub16 r2, r4, r7
-0+1dc <[^>]*> 16142f77 ? ssub16ne r2, r4, r7
-0+1e0 <[^>]*> e6142ff7 ? ssub8 r2, r4, r7
-0+1e4 <[^>]*> 16142ff7 ? ssub8ne r2, r4, r7
-0+1e8 <[^>]*> e6142f57 ? ssax r2, r4, r7
-0+1ec <[^>]*> 16142f57 ? ssaxne r2, r4, r7
-0+1f0 <[^>]*> e1831f92 ? strex r1, r2, \[r3\]
-0+1f4 <[^>]*> 11831f92 ? strexne r1, r2, \[r3\]
-0+1f8 <[^>]*> e6bf2075 ? sxth r2, r5
-0+1fc <[^>]*> e6bf2475 ? sxth r2, r5, ror #8
-0+200 <[^>]*> 16bf2075 ? sxthne r2, r5
-0+204 <[^>]*> 16bf2475 ? sxthne r2, r5, ror #8
-0+208 <[^>]*> e68f2075 ? sxtb16 r2, r5
-0+20c <[^>]*> e68f2475 ? sxtb16 r2, r5, ror #8
-0+210 <[^>]*> 168f2075 ? sxtb16ne r2, r5
-0+214 <[^>]*> 168f2475 ? sxtb16ne r2, r5, ror #8
-0+218 <[^>]*> e6af2075 ? sxtb r2, r5
-0+21c <[^>]*> e6af2475 ? sxtb r2, r5, ror #8
-0+220 <[^>]*> 16af2075 ? sxtbne r2, r5
-0+224 <[^>]*> 16af2475 ? sxtbne r2, r5, ror #8
-0+228 <[^>]*> e6542f17 ? uadd16 r2, r4, r7
-0+22c <[^>]*> 16542f17 ? uadd16ne r2, r4, r7
-0+230 <[^>]*> e6f32075 ? uxtah r2, r3, r5
-0+234 <[^>]*> e6f32475 ? uxtah r2, r3, r5, ror #8
-0+238 <[^>]*> 16f32075 ? uxtahne r2, r3, r5
-0+23c <[^>]*> 16f32475 ? uxtahne r2, r3, r5, ror #8
-0+240 <[^>]*> e6542f97 ? uadd8 r2, r4, r7
-0+244 <[^>]*> 16542f97 ? uadd8ne r2, r4, r7
-0+248 <[^>]*> e6c32075 ? uxtab16 r2, r3, r5
-0+24c <[^>]*> e6c32475 ? uxtab16 r2, r3, r5, ror #8
-0+250 <[^>]*> 16c32075 ? uxtab16ne r2, r3, r5
-0+254 <[^>]*> 16c32475 ? uxtab16ne r2, r3, r5, ror #8
-0+258 <[^>]*> e6e32075 ? uxtab r2, r3, r5
-0+25c <[^>]*> e6e32475 ? uxtab r2, r3, r5, ror #8
-0+260 <[^>]*> 16e32075 ? uxtabne r2, r3, r5
-0+264 <[^>]*> 16e32475 ? uxtabne r2, r3, r5, ror #8
-0+268 <[^>]*> e6542f37 ? uasx r2, r4, r7
-0+26c <[^>]*> 16542f37 ? uasxne r2, r4, r7
-0+270 <[^>]*> e6742f17 ? uhadd16 r2, r4, r7
-0+274 <[^>]*> 16742f17 ? uhadd16ne r2, r4, r7
-0+278 <[^>]*> e6742f97 ? uhadd8 r2, r4, r7
-0+27c <[^>]*> 16742f97 ? uhadd8ne r2, r4, r7
-0+280 <[^>]*> e6742f37 ? uhasx r2, r4, r7
-0+284 <[^>]*> 16742f37 ? uhasxne r2, r4, r7
-0+288 <[^>]*> e6742f77 ? uhsub16 r2, r4, r7
-0+28c <[^>]*> 16742f77 ? uhsub16ne r2, r4, r7
-0+290 <[^>]*> e6742ff7 ? uhsub8 r2, r4, r7
-0+294 <[^>]*> 16742ff7 ? uhsub8ne r2, r4, r7
-0+298 <[^>]*> e6742f57 ? uhsax r2, r4, r7
-0+29c <[^>]*> 16742f57 ? uhsaxne r2, r4, r7
-0+2a0 <[^>]*> e0421493 ? umaal r1, r2, r3, r4
-0+2a4 <[^>]*> d0421493 ? umaalle r1, r2, r3, r4
-0+2a8 <[^>]*> e6642f17 ? uqadd16 r2, r4, r7
-0+2ac <[^>]*> 16642f17 ? uqadd16ne r2, r4, r7
-0+2b0 <[^>]*> e6642f97 ? uqadd8 r2, r4, r7
-0+2b4 <[^>]*> 16642f97 ? uqadd8ne r2, r4, r7
-0+2b8 <[^>]*> e6642f37 ? uqasx r2, r4, r7
-0+2bc <[^>]*> 16642f37 ? uqasxne r2, r4, r7
-0+2c0 <[^>]*> e6642f77 ? uqsub16 r2, r4, r7
-0+2c4 <[^>]*> 16642f77 ? uqsub16ne r2, r4, r7
-0+2c8 <[^>]*> e6642ff7 ? uqsub8 r2, r4, r7
-0+2cc <[^>]*> 16642ff7 ? uqsub8ne r2, r4, r7
-0+2d0 <[^>]*> e6642f57 ? uqsax r2, r4, r7
-0+2d4 <[^>]*> 16642f57 ? uqsaxne r2, r4, r7
-0+2d8 <[^>]*> e781f312 ? usad8 r1, r2, r3
-0+2dc <[^>]*> 1781f312 ? usad8ne r1, r2, r3
-0+2e0 <[^>]*> e7814312 ? usada8 r1, r2, r3, r4
-0+2e4 <[^>]*> 17814312 ? usada8ne r1, r2, r3, r4
-0+2e8 <[^>]*> e6ef1012 ? usat r1, #15, r2
-0+2ec <[^>]*> e6ef1252 ? usat r1, #15, r2, asr #4
-0+2f0 <[^>]*> e6ef1212 ? usat r1, #15, r2, lsl #4
-0+2f4 <[^>]*> e6ef1f32 ? usat16 r1, #15, r2
-0+2f8 <[^>]*> d6ef1f32 ? usat16le r1, #15, r2
-0+2fc <[^>]*> d6ef1012 ? usatle r1, #15, r2
-0+300 <[^>]*> d6ef1252 ? usatle r1, #15, r2, asr #4
-0+304 <[^>]*> d6ef1212 ? usatle r1, #15, r2, lsl #4
-0+308 <[^>]*> e6542f77 ? usub16 r2, r4, r7
-0+30c <[^>]*> 16542f77 ? usub16ne r2, r4, r7
-0+310 <[^>]*> e6542ff7 ? usub8 r2, r4, r7
-0+314 <[^>]*> 16542ff7 ? usub8ne r2, r4, r7
-0+318 <[^>]*> e6542f57 ? usax r2, r4, r7
-0+31c <[^>]*> 16542f57 ? usaxne r2, r4, r7
-0+320 <[^>]*> e6ff2075 ? uxth r2, r5
-0+324 <[^>]*> e6ff2475 ? uxth r2, r5, ror #8
-0+328 <[^>]*> 16ff2075 ? uxthne r2, r5
-0+32c <[^>]*> 16ff2475 ? uxthne r2, r5, ror #8
-0+330 <[^>]*> e6cf2075 ? uxtb16 r2, r5
-0+334 <[^>]*> e6cf2475 ? uxtb16 r2, r5, ror #8
-0+338 <[^>]*> 16cf2075 ? uxtb16ne r2, r5
-0+33c <[^>]*> 16cf2475 ? uxtb16ne r2, r5, ror #8
-0+340 <[^>]*> e6ef2075 ? uxtb r2, r5
-0+344 <[^>]*> e6ef2475 ? uxtb r2, r5, ror #8
-0+348 <[^>]*> 16ef2075 ? uxtbne r2, r5
-0+34c <[^>]*> 16ef2475 ? uxtbne r2, r5, ror #8
-0+350 <[^>]*> f10a00ca ? cpsie if,#10
-0+354 <[^>]*> f10a00d5 ? cpsie if,#21
-0+358 <[^>]*> f8cd0510 ? srsia sp, #16
-0+35c <[^>]*> f9ed0510 ? srsib sp!, #16
+0+0a4 <[^>]*> f8920a00 ? rfeia r2
+0+0a8 <[^>]*> f8b20a00 ? rfeia r2!
+0+0ac <[^>]*> e6142f17 ? sadd16 r2, r4, r7
+0+0b0 <[^>]*> 16142f17 ? sadd16ne r2, r4, r7
+0+0b4 <[^>]*> e6b42075 ? sxtah r2, r4, r5
+0+0b8 <[^>]*> e6b42475 ? sxtah r2, r4, r5, ror #8
+0+0bc <[^>]*> 16b42075 ? sxtahne r2, r4, r5
+0+0c0 <[^>]*> 16b42475 ? sxtahne r2, r4, r5, ror #8
+0+0c4 <[^>]*> e6142f97 ? sadd8 r2, r4, r7
+0+0c8 <[^>]*> 16142f97 ? sadd8ne r2, r4, r7
+0+0cc <[^>]*> e6842075 ? sxtab16 r2, r4, r5
+0+0d0 <[^>]*> e6842475 ? sxtab16 r2, r4, r5, ror #8
+0+0d4 <[^>]*> 16842075 ? sxtab16ne r2, r4, r5
+0+0d8 <[^>]*> 16842475 ? sxtab16ne r2, r4, r5, ror #8
+0+0dc <[^>]*> e6a42075 ? sxtab r2, r4, r5
+0+0e0 <[^>]*> e6a42475 ? sxtab r2, r4, r5, ror #8
+0+0e4 <[^>]*> 16a42075 ? sxtabne r2, r4, r5
+0+0e8 <[^>]*> 16a42475 ? sxtabne r2, r4, r5, ror #8
+0+0ec <[^>]*> e6142f37 ? sasx r2, r4, r7
+0+0f0 <[^>]*> 16142f37 ? sasxne r2, r4, r7
+0+0f4 <[^>]*> e6821fb3 ? sel r1, r2, r3
+0+0f8 <[^>]*> 16821fb3 ? selne r1, r2, r3
+0+0fc <[^>]*> f1010200 ? setend be
+0+100 <[^>]*> f1010000 ? setend le
+0+104 <[^>]*> e6342f17 ? shadd16 r2, r4, r7
+0+108 <[^>]*> 16342f17 ? shadd16ne r2, r4, r7
+0+10c <[^>]*> e6342f97 ? shadd8 r2, r4, r7
+0+110 <[^>]*> 16342f97 ? shadd8ne r2, r4, r7
+0+114 <[^>]*> e6342f37 ? shasx r2, r4, r7
+0+118 <[^>]*> 16342f37 ? shasxne r2, r4, r7
+0+11c <[^>]*> e6342f77 ? shsub16 r2, r4, r7
+0+120 <[^>]*> 16342f77 ? shsub16ne r2, r4, r7
+0+124 <[^>]*> e6342ff7 ? shsub8 r2, r4, r7
+0+128 <[^>]*> 16342ff7 ? shsub8ne r2, r4, r7
+0+12c <[^>]*> e6342f57 ? shsax r2, r4, r7
+0+130 <[^>]*> 16342f57 ? shsaxne r2, r4, r7
+0+134 <[^>]*> e7014312 ? smlad r1, r2, r3, r4
+0+138 <[^>]*> d7014312 ? smladle r1, r2, r3, r4
+0+13c <[^>]*> e7014332 ? smladx r1, r2, r3, r4
+0+140 <[^>]*> d7014332 ? smladxle r1, r2, r3, r4
+0+144 <[^>]*> e7421413 ? smlald r1, r2, r3, r4
+0+148 <[^>]*> d7421413 ? smlaldle r1, r2, r3, r4
+0+14c <[^>]*> e7421433 ? smlaldx r1, r2, r3, r4
+0+150 <[^>]*> d7421433 ? smlaldxle r1, r2, r3, r4
+0+154 <[^>]*> e7014352 ? smlsd r1, r2, r3, r4
+0+158 <[^>]*> d7014352 ? smlsdle r1, r2, r3, r4
+0+15c <[^>]*> e7014372 ? smlsdx r1, r2, r3, r4
+0+160 <[^>]*> d7014372 ? smlsdxle r1, r2, r3, r4
+0+164 <[^>]*> e7421453 ? smlsld r1, r2, r3, r4
+0+168 <[^>]*> d7421453 ? smlsldle r1, r2, r3, r4
+0+16c <[^>]*> e7421473 ? smlsldx r1, r2, r3, r4
+0+170 <[^>]*> d7421473 ? smlsldxle r1, r2, r3, r4
+0+174 <[^>]*> e7514312 ? smmla r1, r2, r3, r4
+0+178 <[^>]*> d7514312 ? smmlale r1, r2, r3, r4
+0+17c <[^>]*> e7514332 ? smmlar r1, r2, r3, r4
+0+180 <[^>]*> d7514332 ? smmlarle r1, r2, r3, r4
+0+184 <[^>]*> e75143d2 ? smmls r1, r2, r3, r4
+0+188 <[^>]*> d75143d2 ? smmlsle r1, r2, r3, r4
+0+18c <[^>]*> e75143f2 ? smmlsr r1, r2, r3, r4
+0+190 <[^>]*> d75143f2 ? smmlsrle r1, r2, r3, r4
+0+194 <[^>]*> e751f312 ? smmul r1, r2, r3
+0+198 <[^>]*> d751f312 ? smmulle r1, r2, r3
+0+19c <[^>]*> e751f332 ? smmulr r1, r2, r3
+0+1a0 <[^>]*> d751f332 ? smmulrle r1, r2, r3
+0+1a4 <[^>]*> e701f312 ? smuad r1, r2, r3
+0+1a8 <[^>]*> d701f312 ? smuadle r1, r2, r3
+0+1ac <[^>]*> e701f332 ? smuadx r1, r2, r3
+0+1b0 <[^>]*> d701f332 ? smuadxle r1, r2, r3
+0+1b4 <[^>]*> e701f352 ? smusd r1, r2, r3
+0+1b8 <[^>]*> d701f352 ? smusdle r1, r2, r3
+0+1bc <[^>]*> e701f372 ? smusdx r1, r2, r3
+0+1c0 <[^>]*> d701f372 ? smusdxle r1, r2, r3
+0+1c4 <[^>]*> f8cd0510 ? srsia sp, #16
+0+1c8 <[^>]*> f9ed0510 ? srsib sp!, #16
+0+1cc <[^>]*> e6a01012 ? ssat r1, #1, r2
+0+1d0 <[^>]*> e6a01152 ? ssat r1, #1, r2, asr #2
+0+1d4 <[^>]*> e6a01112 ? ssat r1, #1, r2, lsl #2
+0+1d8 <[^>]*> e6a01f31 ? ssat16 r1, #1, r1
+0+1dc <[^>]*> d6a01f31 ? ssat16le r1, #1, r1
+0+1e0 <[^>]*> e6142f77 ? ssub16 r2, r4, r7
+0+1e4 <[^>]*> 16142f77 ? ssub16ne r2, r4, r7
+0+1e8 <[^>]*> e6142ff7 ? ssub8 r2, r4, r7
+0+1ec <[^>]*> 16142ff7 ? ssub8ne r2, r4, r7
+0+1f0 <[^>]*> e6142f57 ? ssax r2, r4, r7
+0+1f4 <[^>]*> 16142f57 ? ssaxne r2, r4, r7
+0+1f8 <[^>]*> e1831f92 ? strex r1, r2, \[r3\]
+0+1fc <[^>]*> 11831f92 ? strexne r1, r2, \[r3\]
+0+200 <[^>]*> e6bf2075 ? sxth r2, r5
+0+204 <[^>]*> e6bf2475 ? sxth r2, r5, ror #8
+0+208 <[^>]*> 16bf2075 ? sxthne r2, r5
+0+20c <[^>]*> 16bf2475 ? sxthne r2, r5, ror #8
+0+210 <[^>]*> e68f2075 ? sxtb16 r2, r5
+0+214 <[^>]*> e68f2475 ? sxtb16 r2, r5, ror #8
+0+218 <[^>]*> 168f2075 ? sxtb16ne r2, r5
+0+21c <[^>]*> 168f2475 ? sxtb16ne r2, r5, ror #8
+0+220 <[^>]*> e6af2075 ? sxtb r2, r5
+0+224 <[^>]*> e6af2475 ? sxtb r2, r5, ror #8
+0+228 <[^>]*> 16af2075 ? sxtbne r2, r5
+0+22c <[^>]*> 16af2475 ? sxtbne r2, r5, ror #8
+0+230 <[^>]*> e6542f17 ? uadd16 r2, r4, r7
+0+234 <[^>]*> 16542f17 ? uadd16ne r2, r4, r7
+0+238 <[^>]*> e6f32075 ? uxtah r2, r3, r5
+0+23c <[^>]*> e6f32475 ? uxtah r2, r3, r5, ror #8
+0+240 <[^>]*> 16f32075 ? uxtahne r2, r3, r5
+0+244 <[^>]*> 16f32475 ? uxtahne r2, r3, r5, ror #8
+0+248 <[^>]*> e6542f97 ? uadd8 r2, r4, r7
+0+24c <[^>]*> 16542f97 ? uadd8ne r2, r4, r7
+0+250 <[^>]*> e6c32075 ? uxtab16 r2, r3, r5
+0+254 <[^>]*> e6c32475 ? uxtab16 r2, r3, r5, ror #8
+0+258 <[^>]*> 16c32075 ? uxtab16ne r2, r3, r5
+0+25c <[^>]*> 16c32475 ? uxtab16ne r2, r3, r5, ror #8
+0+260 <[^>]*> e6e32075 ? uxtab r2, r3, r5
+0+264 <[^>]*> e6e32475 ? uxtab r2, r3, r5, ror #8
+0+268 <[^>]*> 16e32075 ? uxtabne r2, r3, r5
+0+26c <[^>]*> 16e32475 ? uxtabne r2, r3, r5, ror #8
+0+270 <[^>]*> e6542f37 ? uasx r2, r4, r7
+0+274 <[^>]*> 16542f37 ? uasxne r2, r4, r7
+0+278 <[^>]*> e6742f17 ? uhadd16 r2, r4, r7
+0+27c <[^>]*> 16742f17 ? uhadd16ne r2, r4, r7
+0+280 <[^>]*> e6742f97 ? uhadd8 r2, r4, r7
+0+284 <[^>]*> 16742f97 ? uhadd8ne r2, r4, r7
+0+288 <[^>]*> e6742f37 ? uhasx r2, r4, r7
+0+28c <[^>]*> 16742f37 ? uhasxne r2, r4, r7
+0+290 <[^>]*> e6742f77 ? uhsub16 r2, r4, r7
+0+294 <[^>]*> 16742f77 ? uhsub16ne r2, r4, r7
+0+298 <[^>]*> e6742ff7 ? uhsub8 r2, r4, r7
+0+29c <[^>]*> 16742ff7 ? uhsub8ne r2, r4, r7
+0+2a0 <[^>]*> e6742f57 ? uhsax r2, r4, r7
+0+2a4 <[^>]*> 16742f57 ? uhsaxne r2, r4, r7
+0+2a8 <[^>]*> e0421493 ? umaal r1, r2, r3, r4
+0+2ac <[^>]*> d0421493 ? umaalle r1, r2, r3, r4
+0+2b0 <[^>]*> e6642f17 ? uqadd16 r2, r4, r7
+0+2b4 <[^>]*> 16642f17 ? uqadd16ne r2, r4, r7
+0+2b8 <[^>]*> e6642f97 ? uqadd8 r2, r4, r7
+0+2bc <[^>]*> 16642f97 ? uqadd8ne r2, r4, r7
+0+2c0 <[^>]*> e6642f37 ? uqasx r2, r4, r7
+0+2c4 <[^>]*> 16642f37 ? uqasxne r2, r4, r7
+0+2c8 <[^>]*> e6642f77 ? uqsub16 r2, r4, r7
+0+2cc <[^>]*> 16642f77 ? uqsub16ne r2, r4, r7
+0+2d0 <[^>]*> e6642ff7 ? uqsub8 r2, r4, r7
+0+2d4 <[^>]*> 16642ff7 ? uqsub8ne r2, r4, r7
+0+2d8 <[^>]*> e6642f57 ? uqsax r2, r4, r7
+0+2dc <[^>]*> 16642f57 ? uqsaxne r2, r4, r7
+0+2e0 <[^>]*> e781f312 ? usad8 r1, r2, r3
+0+2e4 <[^>]*> 1781f312 ? usad8ne r1, r2, r3
+0+2e8 <[^>]*> e7814312 ? usada8 r1, r2, r3, r4
+0+2ec <[^>]*> 17814312 ? usada8ne r1, r2, r3, r4
+0+2f0 <[^>]*> e6ef1012 ? usat r1, #15, r2
+0+2f4 <[^>]*> e6ef1252 ? usat r1, #15, r2, asr #4
+0+2f8 <[^>]*> e6ef1212 ? usat r1, #15, r2, lsl #4
+0+2fc <[^>]*> e6ef1f32 ? usat16 r1, #15, r2
+0+300 <[^>]*> d6ef1f32 ? usat16le r1, #15, r2
+0+304 <[^>]*> d6ef1012 ? usatle r1, #15, r2
+0+308 <[^>]*> d6ef1252 ? usatle r1, #15, r2, asr #4
+0+30c <[^>]*> d6ef1212 ? usatle r1, #15, r2, lsl #4
+0+310 <[^>]*> e6542f77 ? usub16 r2, r4, r7
+0+314 <[^>]*> 16542f77 ? usub16ne r2, r4, r7
+0+318 <[^>]*> e6542ff7 ? usub8 r2, r4, r7
+0+31c <[^>]*> 16542ff7 ? usub8ne r2, r4, r7
+0+320 <[^>]*> e6542f57 ? usax r2, r4, r7
+0+324 <[^>]*> 16542f57 ? usaxne r2, r4, r7
+0+328 <[^>]*> e6ff2075 ? uxth r2, r5
+0+32c <[^>]*> e6ff2475 ? uxth r2, r5, ror #8
+0+330 <[^>]*> 16ff2075 ? uxthne r2, r5
+0+334 <[^>]*> 16ff2475 ? uxthne r2, r5, ror #8
+0+338 <[^>]*> e6cf2075 ? uxtb16 r2, r5
+0+33c <[^>]*> e6cf2475 ? uxtb16 r2, r5, ror #8
+0+340 <[^>]*> 16cf2075 ? uxtb16ne r2, r5
+0+344 <[^>]*> 16cf2475 ? uxtb16ne r2, r5, ror #8
+0+348 <[^>]*> e6ef2075 ? uxtb r2, r5
+0+34c <[^>]*> e6ef2475 ? uxtb r2, r5, ror #8
+0+350 <[^>]*> 16ef2075 ? uxtbne r2, r5
+0+354 <[^>]*> 16ef2475 ? uxtbne r2, r5, ror #8
+0+358 <[^>]*> f10a00ca ? cpsie if,#10
+0+35c <[^>]*> f10a00d5 ? cpsie if,#21
+0+360 <[^>]*> f8cd0510 ? srsia sp, #16
+0+364 <[^>]*> f9ed0510 ? srsib sp!, #16
diff --git a/gas/testsuite/gas/arm/archv6.s b/gas/testsuite/gas/arm/archv6.s
index 85f05c1..bc8ea72 100644
--- a/gas/testsuite/gas/arm/archv6.s
+++ b/gas/testsuite/gas/arm/archv6.s
@@ -35,14 +35,16 @@ label:
revne r3, r5
revsh r2, r4
revshne r3, r5
- rfeda r2
- rfedb r2!
- rfeea r2
- rfeed r2!
- rfefa r2!
- rfefd r2
- rfeia r2
- rfeib r2!
+ rfeda r2
+ rfefa r2!
+ rfedb r2
+ rfeea r2!
+ rfeia r2
+ rfefd r2!
+ rfeib r2
+ rfeed r2!
+ rfe r2
+ rfe r2!
sadd16 r2, r4, r7
sadd16ne r2, r4, r7
sxtah r2, r4, r5
diff --git a/gas/testsuite/gas/arm/srs-arm.l b/gas/testsuite/gas/arm/srs-arm.l
index ad992f8..1138973 100644
--- a/gas/testsuite/gas/arm/srs-arm.l
+++ b/gas/testsuite/gas/arm/srs-arm.l
@@ -3,3 +3,8 @@
[^:]*:13: Error: SRS base register must be r13 -- `srsda r4,#13'
[^:]*:14: Error: SRS base register must be r13 -- `srsia r4,#13'
[^:]*:15: Error: SRS base register must be r13 -- `srsib r4,#13'
+[^:]*:24: Error: SRS base register must be r13 -- `srsea r4,#13'
+[^:]*:25: Error: SRS base register must be r13 -- `srsfd r4,#13'
+[^:]*:26: Error: SRS base register must be r13 -- `srsfa r4,#13'
+[^:]*:27: Error: SRS base register must be r13 -- `srsed r4,#13'
+[^:]*:30: Error: SRS base register must be r13 -- `srs r4,#13'
diff --git a/gas/testsuite/gas/arm/srs-arm.s b/gas/testsuite/gas/arm/srs-arm.s
index 7d00fc8..5c24b50 100644
--- a/gas/testsuite/gas/arm/srs-arm.s
+++ b/gas/testsuite/gas/arm/srs-arm.s
@@ -13,4 +13,18 @@ foo:
srsda r4, #13
srsia r4, #13
srsib r4, #13
-
+ srsea r13, #13
+ srsea r13!, #13
+ srsfd r13, #13
+ srsfd r13!, #13
+ srsfa r13, #13
+ srsfa r13!, #13
+ srsed r13, #13
+ srsed r13!, #13
+ srsea r4, #13
+ srsfd r4, #13
+ srsfa r4, #13
+ srsed r4, #13
+ srs r13, #13
+ srs r13!, #13
+ srs r4, #13
diff --git a/gas/testsuite/gas/arm/srs-t2.l b/gas/testsuite/gas/arm/srs-t2.l
index f070375..e5f6fd4 100644
--- a/gas/testsuite/gas/arm/srs-t2.l
+++ b/gas/testsuite/gas/arm/srs-t2.l
@@ -1,3 +1,6 @@
[^:]*: Assembler messages:
[^:]*:8: Error: SRS base register must be r13 -- `srsdb r4,#13'
[^:]*:9: Error: SRS base register must be r13 -- `srsia r4,#13'
+[^:]*:16: Error: SRS base register must be r13 -- `srsea r4,#13'
+[^:]*:17: Error: SRS base register must be r13 -- `srsfd r4,#13'
+[^:]*:18: Error: SRS base register must be r13 -- `srs r4,#13'
diff --git a/gas/testsuite/gas/arm/srs-t2.s b/gas/testsuite/gas/arm/srs-t2.s
index 7132626..780d3ca 100644
--- a/gas/testsuite/gas/arm/srs-t2.s
+++ b/gas/testsuite/gas/arm/srs-t2.s
@@ -7,4 +7,13 @@ foo:
srsia r13!, #13
srsdb r4, #13
srsia r4, #13
+ srsea r13, #13
+ srsea r13!, #13
+ srsfd r13, #13
+ srsfd r13!, #13
+ srs r13, #13
+ srs r13!, #13
+ srsea r4, #13
+ srsfd r4, #13
+ srs r4, #13