ArmPkg[all]  0.1
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
ArmDisassemblerLib.h File Reference

Functions

VOID DisassembleInstruction (IN UINT8 **OpCodePtr, IN BOOLEAN Thumb, IN BOOLEAN Extended, IN OUT UINT32 *ItBlock, OUT CHAR8 *Buf, OUT UINTN Size)
 

Detailed Description

Copyright (c) 2008 - 2010, Apple Inc. All rights reserved.

SPDX-License-Identifier: BSD-2-Clause-Patent

Function Documentation

VOID DisassembleInstruction ( IN UINT8 **  OpCodePtr,
IN BOOLEAN  Thumb,
IN BOOLEAN  Extended,
IN OUT UINT32 *  ItBlock,
OUT CHAR8 *  Buf,
OUT UINTN  Size 
)

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.

Parameters
OpCodePtrPtrPointer to pointer of ARM Thumb instruction to disassemble.
ThumbTRUE for Thumb(2), FALSE for ARM instruction stream
ExtendedTRUE dump hex for instruction too.
ItBlockSize of IT Block
BufBuffer to sprintf disassembly into.
SizeSize of Buf in bytes.