From 3a753121f264d901ddbc7633eb2e4afcb3c65924 Mon Sep 17 00:00:00 2001 From: andrewfish Date: Wed, 17 Mar 2010 02:29:58 +0000 Subject: [PATCH] Fix bug git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10263 6f19259b-4bc3-4df7-8a09-765794883524 --- ArmPkg/Library/ArmDisassemblerLib/ArmDisassembler.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/ArmPkg/Library/ArmDisassemblerLib/ArmDisassembler.c b/ArmPkg/Library/ArmDisassemblerLib/ArmDisassembler.c index c3eecbcbcb..8d95a686c9 100644 --- a/ArmPkg/Library/ArmDisassemblerLib/ArmDisassembler.c +++ b/ArmPkg/Library/ArmDisassemblerLib/ArmDisassembler.c @@ -37,11 +37,10 @@ CHAR8 *gCondition[] = { "2" }; -#define COND(_a) gCondition[(_a) >> 28] +#define COND(_a) gCondition[((_a) >> 28)] CHAR8 *gReg[] = { "r0", - "r1", "r2", "r3", "r4", @@ -225,7 +224,7 @@ DisassembleArmInstruction ( if ((OpCode & 0xfd70f000 ) == 0xf550f000) { Index = AsciiSPrint (Buf, Size, "PLD"); } else { - Index = AsciiSPrint (Buf, Size, "%a%a%a%a %a, ", L ? "LDR" : "STR", COND (OpCode), BYTE (B), (!P & W) ? "T":"", gReg[Rd]); + Index = AsciiSPrint (Buf, Size, "%a%a%a%a %a, ", L ? "LDR" : "STR", COND (OpCode), BYTE (B), (!(P) && W) ? "T":"", gReg[Rd]); } if (P) { if (!I) { -- 2.39.2