From 375b2164fe9e42258d1d67239cd7568f47fe631a Mon Sep 17 00:00:00 2001 From: pancake Date: Sun, 29 Dec 2013 02:36:28 +0100 Subject: [PATCH] Implement 'movs' in ARM assembler --- libr/asm/arch/arm/armass.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libr/asm/arch/arm/armass.c b/libr/asm/arch/arm/armass.c index 870613c8da..89a248612c 100644 --- a/libr/asm/arch/arm/armass.c +++ b/libr/asm/arch/arm/armass.c @@ -559,7 +559,7 @@ static int findyz(int x, int *y, int *z) { static int arm_assemble(ArmOpcode *ao, const char *str) { int i, j, ret, reg, a, b; for (i=0; ops[i].name; i++) { - if (!memcmp(ao->op, ops[i].name, strlen (ops[i].name))) { + if (!memcmp (ao->op, ops[i].name, strlen (ops[i].name))) { ao->o = ops[i].code; arm_opcode_cond (ao, strlen(ops[i].name)); if (ao->a[0] || ops[i].type == TYPE_BKP) @@ -657,6 +657,8 @@ static int arm_assemble(ArmOpcode *ao, const char *str) { return 0; break; case TYPE_MOV: + if (!strcmp (ao->op, "movs")) + ao->o = 0xb0e1; ao->o |= getreg (ao->a[0])<<20; ret = getreg (ao->a[1]); if (ret!=-1) ao->o |= ret<<24;