TianoCore EDK2 master
Loading...
Searching...
No Matches
EdbDisasm.h
Go to the documentation of this file.
1
9#ifndef _EFI_EDB_DISASM_H_
10#define _EFI_EDB_DISASM_H_
11
12#include <Uefi.h>
13
14//
15// Definition for instruction OPCODE, MODIFIER, and OPERAND
16//
17#define GET_OPCODE(Addr) (UINT8)((*(UINT8 *)(UINTN)(Addr)) & 0x3F)
18#define GET_MODIFIERS(Addr) (UINT8)((*(UINT8 *)(UINTN)(Addr)) & 0xC0)
19#define GET_OPCODE_BYTE(Addr) (UINT8)(*(UINT8 *)(UINTN)(Addr))
20#define GET_OPERANDS(Addr) (UINT8)(*(UINT8 *)(UINTN)((Addr) + 1))
21
22typedef
24(*EDB_DISASM_INSTRUCTION) (
25 IN EFI_PHYSICAL_ADDRESS InstructionAddress,
26 IN EFI_SYSTEM_CONTEXT SystemContext,
27 OUT CHAR16 **DisAsmString
28 );
29
30#endif
UINT64 UINTN
#define IN
Definition: Base.h:279
#define OUT
Definition: Base.h:284
UINT64 EFI_PHYSICAL_ADDRESS
Definition: UefiBaseType.h:50