From af683911f47a2800af2a37aeb5a0fa76f7234a85 Mon Sep 17 00:00:00 2001 From: comex Date: Tue, 13 Jan 2015 01:02:40 -0500 Subject: small thumb fixes for Rdn and stuff --- lib/dis-thumb.inc.h | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'lib/dis-thumb.inc.h') diff --git a/lib/dis-thumb.inc.h b/lib/dis-thumb.inc.h index 56b1129..75b50dc 100644 --- a/lib/dis-thumb.inc.h +++ b/lib/dis-thumb.inc.h @@ -1,6 +1,14 @@ #include "dis.h" -static INLINE tdis_ret P(GPR_Rm_2_tADDhirr)(tdis_ctx ctx, struct bitslice Rm) { - data(r(Rm)); +static INLINE tdis_ret P(GPR_Rm_unk_Rdn_1_tADDhirr)(tdis_ctx ctx, struct bitslice Rdn, struct bitslice Rm) { + data(rout(Rdn), r(Rm), r(Rdn)); /* yes, twice */ +} +static INLINE tdis_ret P(unk_Rdn_1_tADDrSP)(tdis_ctx ctx, UNUSED struct bitslice Rdn) { + /* this doesn't support constants, and nobody's going to add pc, sp, so... */ + return P(unidentified)(ctx); +} +static INLINE tdis_ret P(GPR_Rm_1_tADDspr)(tdis_ctx ctx, UNUSED struct bitslice Rm) { + /* ditto */ + return P(unidentified)(ctx); } static INLINE tdis_ret P(GPR_Rm_B_1_tBX)(tdis_ctx ctx, struct bitslice Rm) { unsigned val = bs_get(Rm, ctx->op); -- cgit v1.2.3