From c5c902dad22958d301efe961f57dc5b5cf30e115 Mon Sep 17 00:00:00 2001 From: andrewfish Date: Thu, 4 Feb 2010 04:14:39 +0000 Subject: [PATCH] More updated git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9926 6f19259b-4bc3-4df7-8a09-765794883524 --- .../ArmDisassemblerLib/ThumbDisassembler.c | 158 ++++++++++++++++-- 1 file changed, 143 insertions(+), 15 deletions(-) diff --git a/ArmPkg/Library/ArmDisassemblerLib/ThumbDisassembler.c b/ArmPkg/Library/ArmDisassemblerLib/ThumbDisassembler.c index 74154fc219..f9c84bb890 100644 --- a/ArmPkg/Library/ArmDisassemblerLib/ThumbDisassembler.c +++ b/ArmPkg/Library/ArmDisassemblerLib/ThumbDisassembler.c @@ -81,6 +81,16 @@ extern CHAR8 *gReg[]; #define ADD_IMM5 219 #define ADR_THUMB2 220 #define CMN_THUMB2 221 +#define ASR_IMM5 222 +#define ASR_3REG 223 +#define BFC_THUMB2 224 +#define CDP_THUMB2 225 +#define THUMB2_NO_ARGS 226 +#define THUMB2_2REGS 227 +#define ADD_IMM5_2REG 228 +#define CPD_THUMB2 229 +#define THUMB2_4REGS 230 + typedef struct { CHAR8 *Start; @@ -143,6 +153,7 @@ THUMB_INSTRUCTIONS gOpThumb[] = { { "LSL" , 0x4080, 0xffc0, DATA_FORMAT5 }, { "LSR" , 0x0001, 0xf800, DATA_FORMAT4 }, { "LSR" , 0x40c0, 0xffc0, DATA_FORMAT5 }, + { "LSRS", 0x0800, 0xf800, DATA_FORMAT4 }, // LSRS , , # { "MOVS", 0x2000, 0xf800, DATA_FORMAT3 }, { "MOV" , 0x1c00, 0xffc0, DATA_FORMAT3 }, @@ -190,8 +201,14 @@ THUMB_INSTRUCTIONS gOpThumb[] = { THUMB_INSTRUCTIONS gOpThumb2[] = { //Instruct OpCode OpCode Mask Addressig Mode - { "ADR", 0xf2af0000, 0xfbff8000, ADR_THUMB2 }, // ADDR ,