2007-04-19 Paul Brook <paul@codesourcery.com>
authorPaul Brook <paul@codesourcery.com>
Thu, 19 Apr 2007 17:05:12 +0000 (17:05 +0000)
committerPaul Brook <paul@codesourcery.com>
Thu, 19 Apr 2007 17:05:12 +0000 (17:05 +0000)
gas/
* config/tc-arm.c (insns): Allow rsb and rsbs on Thumb-1.

gas/ChangeLog
gas/config/tc-arm.c

index e8e9a5e6f24ba3d04e5276cae585204d256e912f..f19ed525005245b4ddd93d4dcb1eb5015b4447cf 100644 (file)
@@ -1,3 +1,7 @@
+2007-04-19  Paul Brook  <paul@codesourcery.com>
+
+       * config/tc-arm.c (insns): Allow rsb and rsbs on Thumb-1.
+
 2007-04-19  Alan Modra  <amodra@bigpond.net.au>
 
        * Makefile.am: Run "make dep-am".
index b20803f84d89dd286a44e98853406bc32cd5d27a..4e3afec0593e169e544ef27967b975e9aa8e3c02 100644 (file)
@@ -14827,6 +14827,10 @@ static const struct asm_opcode insns[] =
  tCE(push,     92d0000, push,     1, (REGLST),      push_pop, t_push_pop),
  tCE(pop,      8bd0000, pop,      1, (REGLST),      push_pop, t_push_pop),
 
+ /* These may simplify to neg.  */
+ TCE(rsb,      0600000, ebc00000, 3, (RR, oRR, SH), arit, t_rsb),
+ TC3(rsbs,     0700000, ebd00000, 3, (RR, oRR, SH), arit, t_rsb),
+
 #undef THUMB_VARIANT
 #define THUMB_VARIANT &arm_ext_v6
  TCE(cpy,       1a00000, 4600,     2, (RR, RR),      rd_rm, t_cpy),
@@ -14834,8 +14838,6 @@ static const struct asm_opcode insns[] =
  /* V1 instructions with no Thumb analogue prior to V6T2.  */
 #undef THUMB_VARIANT
 #define THUMB_VARIANT &arm_ext_v6t2
- TCE(rsb,      0600000, ebc00000, 3, (RR, oRR, SH), arit, t_rsb),
- TC3(rsbs,     0700000, ebd00000, 3, (RR, oRR, SH), arit, t_rsb),
  TCE(teq,      1300000, ea900f00, 2, (RR, SH),      cmp,  t_mvn_tst),
  TC3w(teqs,    1300000, ea900f00, 2, (RR, SH),      cmp,  t_mvn_tst),
   CL(teqp,     130f000,           2, (RR, SH),      cmp),