| /** @file | |
| Copyright (c) 2008 - 2010, Apple Inc. All rights reserved.<BR> | |
| SPDX-License-Identifier: BSD-2-Clause-Patent | |
| **/ | |
| #ifndef ARM_DISASSEMBLER_LIB_H_ | |
| #define ARM_DISASSEMBLER_LIB_H_ | |
| /** | |
| Place a disassembly of **OpCodePtr into buffer, and update OpCodePtr to | |
| point to next instruction. | |
| We cheat and only decode instructions that access | |
| memory. If the instruction is not found we dump the instruction in hex. | |
| @param OpCodePtrPtr Pointer to pointer of ARM Thumb instruction to disassemble. | |
| @param Thumb TRUE for Thumb(2), FALSE for ARM instruction stream | |
| @param Extended TRUE dump hex for instruction too. | |
| @param ItBlock Size of IT Block | |
| @param Buf Buffer to sprintf disassembly into. | |
| @param Size Size of Buf in bytes. | |
| **/ | |
| VOID | |
| DisassembleInstruction ( | |
| IN UINT8 **OpCodePtr, | |
| IN BOOLEAN Thumb, | |
| IN BOOLEAN Extended, | |
| IN OUT UINT32 *ItBlock, | |
| OUT CHAR8 *Buf, | |
| OUT UINTN Size | |
| ); | |
| #endif // ARM_DISASSEMBLER_LIB_H_ |