aboutsummaryrefslogtreecommitdiff
path: root/generated/generic-dis-thumb.inc.h
diff options
context:
space:
mode:
authorcomex2015-02-01 01:56:29 -0500
committercomex2015-02-01 01:56:42 -0500
commita23ef990492cd0384de1a924c44805587d5b5aed (patch)
treeaa3a28446fc1a7ca1d799c8f3ad3acc6afdea0f2 /generated/generic-dis-thumb.inc.h
parenttrivial wording tweak (diff)
downloadsubstitute-a23ef990492cd0384de1a924c44805587d5b5aed.tar.gz
fix my utter failure to handle branches/conditionals correctly (on ARM)
Diffstat (limited to 'generated/generic-dis-thumb.inc.h')
-rw-r--r--generated/generic-dis-thumb.inc.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/generated/generic-dis-thumb.inc.h b/generated/generic-dis-thumb.inc.h
index be5abb6..42c6c20 100644
--- a/generated/generic-dis-thumb.inc.h
+++ b/generated/generic-dis-thumb.inc.h
@@ -1,5 +1,5 @@
/* Generated code; do not edit!
- generated by tables/gen.js from imaon2 '2b8112204067abe3d0643e23c2486656841ecafe'
+ generated by tables/gen.js from imaon2 '2b8112204067abe3d0643e23c2486656841ecafe-dirty'
https://github.com/comex/imaon2
arguments: '--gen-hook-disassembler -n _thumb --dis-pattern=P(XXX) out/out-ARM.json'
(fair warning: at present the main (Rust) code in that repository is barely
@@ -15,7 +15,7 @@
/* t_adrlabel_addr_unk_Rd_1_tADR: tADR */
/* t_brtarget_target_B_1_tB: tB */
/* GPR_Rm_B_1_tBX: tBX */
-/* t_bcctarget_target_B_1_tBcc: tBcc */
+/* t_bcctarget_target_pred_p_B_1_tBcc: tBcc */
/* t_cbtarget_target_B_2_tCBNZ: tCBNZ, tCBZ */
/* tGPR_Rn_reglist_regs_1_tLDMIA: tLDMIA */
/* t_addrmode_pc_addr_unk_Rt_1_tLDRpci: tLDRpci */
@@ -164,7 +164,8 @@
case 15: {
if ((op & 0xfffff000) == 0xd000) {
struct bitslice target = {.nruns = 1, .runs = (struct bitslice_run[]) {{0,0,8}}};
- return P(t_bcctarget_target_B_1_tBcc)(ctx, target); /* 0x0000d000 | 0x00000fff */
+ struct bitslice p = {.nruns = 1, .runs = (struct bitslice_run[]) {{8,0,4}}};
+ return P(t_bcctarget_target_pred_p_B_1_tBcc)(ctx, target, p); /* 0x0000d000 | 0x00000fff */
} else {
return P(unidentified)(ctx);
}
@@ -248,7 +249,7 @@ static INLINE tdis_ret P(tGPR_Rn_reglist_regs_1_tLDMIA)(struct bitslice ctx, str
static INLINE tdis_ret P(tGPR_Rn_reglist_regs_S_1_tSTMIA_UPD)(struct bitslice ctx, struct bitslice regs, struct bitslice Rn) {}
static INLINE tdis_ret P(t_addrmode_pc_addr_unk_Rt_1_tLDRpci)(struct bitslice ctx, struct bitslice addr, struct bitslice Rt) {}
static INLINE tdis_ret P(t_adrlabel_addr_unk_Rd_1_tADR)(struct bitslice ctx, struct bitslice addr, struct bitslice Rd) {}
-static INLINE tdis_ret P(t_bcctarget_target_B_1_tBcc)(struct bitslice ctx, struct bitslice target) {}
+static INLINE tdis_ret P(t_bcctarget_target_pred_p_B_1_tBcc)(struct bitslice ctx, struct bitslice target, struct bitslice p) {}
static INLINE tdis_ret P(t_brtarget_target_B_1_tB)(struct bitslice ctx, struct bitslice target) {}
static INLINE tdis_ret P(t_cbtarget_target_B_2_tCBNZ)(struct bitslice ctx, struct bitslice target) {}
static INLINE tdis_ret P(unk_Rdn_1_tADDrSP)(struct bitslice ctx, struct bitslice Rdn) {}