summaryrefslogtreecommitdiff
path: root/src/arch/arm/v7/thumb_32.c
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2014-12-08 08:27:56 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2014-12-08 08:27:56 (GMT)
commit096f123b87437cf25cd008a6dea710286fbefcf0 (patch)
treea79c3b401b44d5aa513e3931b8422134d2f24936 /src/arch/arm/v7/thumb_32.c
parent0a7b9b66bdcf386a36ec13ec480b52aa17406385 (diff)
Supported new ARMv7 instructions.
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@437 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/arch/arm/v7/thumb_32.c')
-rw-r--r--src/arch/arm/v7/thumb_32.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/arch/arm/v7/thumb_32.c b/src/arch/arm/v7/thumb_32.c
index 00b3171..04d760b 100644
--- a/src/arch/arm/v7/thumb_32.c
+++ b/src/arch/arm/v7/thumb_32.c
@@ -521,6 +521,12 @@ static GArchInstruction *process_armv7_thumb_32_branches_and_miscellaneous_contr
else if (op1 == b010 && op == b1111111)
result = armv7_read_thumb_32_instr_udf(raw);
+ else if ((op1 & b101) == b100)
+ result = armv7_read_thumb_32_instr_bl_blx_immediate(raw);
+
+ else if ((op1 & b101) == b101)
+ result = armv7_read_thumb_32_instr_bl_blx_immediate(raw);
+
return result;
}