]> git.proxmox.com Git - mirror_edk2.git/commitdiff
Fix bug
authorandrewfish <andrewfish@6f19259b-4bc3-4df7-8a09-765794883524>
Wed, 17 Mar 2010 02:29:58 +0000 (02:29 +0000)
committerandrewfish <andrewfish@6f19259b-4bc3-4df7-8a09-765794883524>
Wed, 17 Mar 2010 02:29:58 +0000 (02:29 +0000)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10263 6f19259b-4bc3-4df7-8a09-765794883524

ArmPkg/Library/ArmDisassemblerLib/ArmDisassembler.c

index c3eecbcbcb90b000020af0d3af161263c9c96442..8d95a686c9caa5b4691b174ca2e4844258d58f0e 100644 (file)
@@ -37,11 +37,10 @@ CHAR8 *gCondition[] = {
   "2"\r
 };\r
 \r
   "2"\r
 };\r
 \r
-#define COND(_a)  gCondition[(_a) >> 28]\r
+#define COND(_a)  gCondition[((_a) >> 28)]\r
 \r
 CHAR8 *gReg[] = {\r
   "r0",\r
 \r
 CHAR8 *gReg[] = {\r
   "r0",\r
-  "r1",\r
   "r2",\r
   "r3",\r
   "r4",\r
   "r2",\r
   "r3",\r
   "r4",\r
@@ -225,7 +224,7 @@ DisassembleArmInstruction (
     if ((OpCode & 0xfd70f000 ) == 0xf550f000) {\r
       Index = AsciiSPrint (Buf, Size, "PLD");\r
     } else {\r
     if ((OpCode & 0xfd70f000 ) == 0xf550f000) {\r
       Index = AsciiSPrint (Buf, Size, "PLD");\r
     } else {\r
-      Index = AsciiSPrint (Buf, Size, "%a%a%a%a %a, ", L ? "LDR" : "STR", COND (OpCode), BYTE (B), (!& W) ? "T":"", gReg[Rd]); \r
+      Index = AsciiSPrint (Buf, Size, "%a%a%a%a %a, ", L ? "LDR" : "STR", COND (OpCode), BYTE (B), (!(P) && W) ? "T":"", gReg[Rd]); \r
     }\r
     if (P) {\r
       if (!I) {\r
     }\r
     if (P) {\r
       if (!I) {\r