]> git.proxmox.com Git - mirror_edk2.git/blame - ArmPkg/Include/Library/ArmDisassemblerLib.h
ARM Packages: Fixed line endings
[mirror_edk2.git] / ArmPkg / Include / Library / ArmDisassemblerLib.h
CommitLineData
1e57a462 1/** @file\r
2\r
3 Copyright (c) 2008 - 2010, Apple Inc. All rights reserved.<BR>\r
4\r
5 This program and the accompanying materials\r
6 are licensed and made available under the terms and conditions of the BSD License\r
7 which accompanies this distribution. The full text of the license may be found at\r
8 http://opensource.org/licenses/bsd-license.php\r
9\r
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
12\r
13**/\r
14\r
15#ifndef __ARM_DISASSEBLER_LIB_H__\r
16#define __ARM_DISASSEBLER_LIB_H__\r
17\r
18/**\r
19 Place a dissasembly of of **OpCodePtr into buffer, and update OpCodePtr to \r
20 point to next instructin. \r
21 \r
22 We cheat and only decode instructions that access \r
23 memory. If the instruction is not found we dump the instruction in hex.\r
24 \r
25 @param OpCodePtrPtr Pointer to pointer of ARM Thumb instruction to disassemble. \r
26 @param Thumb TRUE for Thumb(2), FALSE for ARM instruction stream\r
27 @param Extended TRUE dump hex for instruction too.\r
f3198cba 28 @param ItBlock Size of IT Block\r
1e57a462 29 @param Buf Buffer to sprintf disassembly into.\r
30 @param Size Size of Buf in bytes. \r
31 \r
32**/\r
33VOID\r
34DisassembleInstruction (\r
35 IN UINT8 **OpCodePtr,\r
36 IN BOOLEAN Thumb,\r
37 IN BOOLEAN Extended,\r
f3198cba 38 IN OUT UINT32 *ItBlock,\r
1e57a462 39 OUT CHAR8 *Buf,\r
40 OUT UINTN Size\r
41 );\r
42 \r
43#endif \r