about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--miasm2/arch/arm/arch.py3
-rw-r--r--test/arch/arm/arch.py6
2 files changed, 8 insertions, 1 deletions
diff --git a/miasm2/arch/arm/arch.py b/miasm2/arch/arm/arch.py
index 67d73592..e1b015a5 100644
--- a/miasm2/arch/arm/arch.py
+++ b/miasm2/arch/arm/arch.py
@@ -2373,7 +2373,7 @@ armtop("addsp", [bs('10110000'), bs_addsubsp_name, sp, off7], [sp, off7])
 armtop("pushpop", [bs('1011'), bs_pushpop_name, bs('10'), pclr, trlistpclr], [trlistpclr])
 armtop("btransfersp", [bs('1100'),  bs_tbtransfer_name, rbl_wb, trlist])
 armtop("br", [bs('1101'),  bs_br_name, offs8])
-armtop("blx", [bs("01000111"),  bs('10'), rnl, bs('000')])
+armtop("blx", [bs("01000111"),  bs('1'), rm, bs('000')])
 armtop("svc", [bs('11011111'),  imm8])
 armtop("b", [bs('11100'),  offs11])
 armtop("und", [bs('1101'), bs('1110'), imm8_d1])
@@ -3215,6 +3215,7 @@ armtop("add", [bs('11110'), imm12_1, bs('01000'), scc, rn, bs('0'), imm12_3, rd,
 armtop("bic", [bs('11110'), imm12_1, bs('00001'), scc, rn_nosppc, bs('0'), imm12_3, rd, imm12_8], [rd, rn_nosppc, imm12_8])
 armtop("and", [bs('11110'), imm12_1, bs('00000'), scc, rn, bs('0'), imm12_3, rd_nopc, imm12_8], [rd_nopc, rn, imm12_8])
 armtop("sub", [bs('11110'), imm12_1, bs('01101'), scc, rn, bs('0'), imm12_3, rd_nopc, imm12_8], [rd_nopc, rn, imm12_8])
+armtop("eor", [bs('11110'), imm12_1, bs('00100'), scc, rn, bs('0'), imm12_3, rd_nopc, imm12_8], [rd_nopc, rn, imm12_8])
 armtop("add", [bs('11110'), imm12_1, bs('10000'), scc, rn_nosppc, bs('0'), imm12_3, rd, imm12_8_t4], [rd, rn_nosppc, imm12_8_t4])
 armtop("cmp", [bs('11110'), imm12_1, bs('01101'), bs('1'), rn, bs('0'), imm12_3, bs('1111'), imm12_8] )
 
diff --git a/test/arch/arm/arch.py b/test/arch/arm/arch.py
index d92c24b2..2110ccf7 100644
--- a/test/arch/arm/arch.py
+++ b/test/arch/arm/arch.py
@@ -431,6 +431,9 @@ reg_tests_armt = [
     ("00000000    BLX        R7",
      "B847"),
 
+    ("00000000    BLX        R8",
+     "C047"),
+
     ("00000000    CBZ        R4, 0x2E",
      "bcb1"),
     ("00000000    CBNZ       R0, 0x2A",
@@ -667,6 +670,9 @@ reg_tests_armt = [
     ("xxxxxxxx    EOR        R3, R3, R1",
      "83EA0103"),
 
+    ("xxxxxxxx    EOR        R0, R1, 0x42",
+     "81F04200"),
+
     ("xxxxxxxx    DSB        SY",
      "bff34f8f"),