diff --git a/ArmPkg/Library/ArmDisassemblerLib/ArmDisassembler.c b/ArmPkg/Library/ArmDisassemblerLib/ArmDisassembler.c index abaacca53a..e67e13a50a 100644 --- a/ArmPkg/Library/ArmDisassemblerLib/ArmDisassembler.c +++ b/ArmPkg/Library/ArmDisassemblerLib/ArmDisassembler.c @@ -158,7 +158,7 @@ DisassembleArmInstruction ( IN BOOLEAN Extended ) { - UINT32 OpCode = **OpCodePtr; + UINT32 OpCode; CHAR8 *Type, *Root; BOOLEAN I, P, U, B, W, L, S, H; UINT32 Rn, Rd, Rm; @@ -166,6 +166,8 @@ DisassembleArmInstruction ( UINT32 Index; UINT32 shift_imm, shift; + OpCode = **OpCodePtr; + I = (OpCode & BIT25) == BIT25; P = (OpCode & BIT24) == BIT24; U = (OpCode & BIT23) == BIT23;