summaryrefslogtreecommitdiff
path: root/gnu/usr.bin/binutils-2.17
diff options
context:
space:
mode:
authorJonathan Gray <jsg@cvs.openbsd.org>2012-08-22 14:39:44 +0000
committerJonathan Gray <jsg@cvs.openbsd.org>2012-08-22 14:39:44 +0000
commit40a685134fab1afeaa02c8b6a7cfb2a3062b4926 (patch)
tree84f978abb54244a723938964c4a62d9fb6fd6802 /gnu/usr.bin/binutils-2.17
parent5fcedf18cd884b71eba1a085d459aa8ae9cd1059 (diff)
recognise rrx mnemonic, from GPLv2 apple cctools via FreeBSD
ok miod@
Diffstat (limited to 'gnu/usr.bin/binutils-2.17')
-rw-r--r--gnu/usr.bin/binutils-2.17/gas/config/tc-arm.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/gnu/usr.bin/binutils-2.17/gas/config/tc-arm.c b/gnu/usr.bin/binutils-2.17/gas/config/tc-arm.c
index 485fad2e53c..912fca0e29d 100644
--- a/gnu/usr.bin/binutils-2.17/gas/config/tc-arm.c
+++ b/gnu/usr.bin/binutils-2.17/gas/config/tc-arm.c
@@ -7644,6 +7644,13 @@ do_t_rbit (void)
}
static void
+do_t_rd_rm (void)
+{
+ inst.instruction |= inst.operands[0].reg << 8;
+ inst.instruction |= inst.operands[1].reg;
+}
+
+static void
do_t_rev (void)
{
if (inst.operands[0].reg <= 7 && inst.operands[1].reg <= 7
@@ -9334,6 +9341,9 @@ static const struct asm_opcode insns[] =
TCE(ldrexd, 1b00f9f, e8d0007f, 3, (RRnpc, oRRnpc, RRnpcb), ldrexd, t_ldrexd),
TCE(strexd, 1a00f90, e8c00070, 4, (RRnpc, RRnpc, oRRnpc, RRnpcb), strexd, t_strexd),
+ TCE(rrx, 1a00060, ea4f0030, 2, (RR, RR), rd_rm, t_rd_rm),
+ TCE(rrxs, 1b00060, ea5f0030, 2, (RR, RR), rd_rm, t_rd_rm),
+
#undef THUMB_VARIANT
#define THUMB_VARIANT &arm_ext_v6t2
TCE(ldrexb, 1d00f9f, e8d00f4f, 2, (RRnpc, RRnpcb), rd_rn, rd_rn),