diff options
| -rw-r--r-- | miasm2/arch/arm/arch.py | 3 | ||||
| -rw-r--r-- | test/arch/arm/arch.py | 6 |
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"), |