TianoCore EDK2 master
Loading...
Searching...
No Matches
EdbSymbol.h
Go to the documentation of this file.
1
9#ifndef _EFI_EDB_SYMBOL_H_
10#define _EFI_EDB_SYMBOL_H_
11
12#include <Uefi.h>
13
14//
15// The default base address is 0x10000000
16//
17#define EFI_DEBUGGER_DEFAULT_LINK_IMAGEBASE 0x10000000
18
19#define EFI_DEBUGGER_MAX_SYMBOL_ADDRESS_DELTA_VALUE 0x100000 // 1 M delta
20
21typedef enum {
22 EdbMatchSymbolTypeSameAdderss,
23 EdbMatchSymbolTypeNearestAddress,
24 EdbMatchSymbolTypeLowerAddress,
25 EdbMatchSymbolTypeUpperAddress,
26 EdbMatchSymbolTypeMax,
27} EDB_MATCH_SYMBOL_TYPE;
28
29typedef enum {
30 EdbEbcImageRvaSearchTypeAny,
31 EdbEbcImageRvaSearchTypeFirst,
32 EdbEbcImageRvaSearchTypeLast,
33 EdbEbcImageRvaSearchTypeMax,
34} EDB_EBC_IMAGE_RVA_SEARCH_TYPE;
35
50 IN UINTN Address,
51 IN EDB_MATCH_SYMBOL_TYPE Type,
54 );
55
70 IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
71 IN CHAR16 *FileName,
72 IN UINTN BufferSize,
73 IN VOID *Buffer
74 );
75
88 IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
89 IN CHAR16 *FileName
90 );
91
106 IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
107 IN CHAR16 *FileName,
108 IN EDB_EBC_IMAGE_RVA_SEARCH_TYPE SearchType
109 );
110
126 IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
127 IN CHAR16 *MapFileName,
128 IN CHAR16 *FileName,
129 IN UINTN BufferSize,
130 IN VOID *Buffer
131 );
132
147 IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
148 IN CHAR16 *MapFileName,
149 IN CHAR16 *FileName,
150 OUT VOID **Buffer
151 );
152
168 IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
169 IN CHAR16 *MapFileName,
170 IN CHAR16 *CodeFileName,
171 IN UINTN SourceBufferSize,
172 IN VOID *SourceBuffer
173 );
174
189 IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,
190 IN CHAR16 *MapFileName,
191 IN CHAR16 *CodeFileName,
192 IN VOID *SourceBuffer
193 );
194
204CHAR8 *
206 IN UINTN Address
207 );
208
220UINTN
222 IN UINTN Address,
223 IN BOOLEAN IsPrint
224 );
225
239Symboltoi (
240 IN CHAR16 *Symbol,
241 OUT UINTN *Address
242 );
243
244#endif
UINT64 UINTN
EFI_STATUS EdbLoadSymbol(IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate, IN CHAR16 *FileName, IN UINTN BufferSize, IN VOID *Buffer)
Definition: EdbSymbol.c:693
EFI_STATUS EdbLoadCode(IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate, IN CHAR16 *MapFileName, IN CHAR16 *FileName, IN UINTN BufferSize, IN VOID *Buffer)
Definition: EdbSymbol.c:1438
EFI_STATUS EdbUnloadSymbol(IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate, IN CHAR16 *FileName)
Definition: EdbSymbol.c:614
UINTN EbdFindSymbolAddress(IN UINTN Address, IN EDB_MATCH_SYMBOL_TYPE Type, OUT EFI_DEBUGGER_SYMBOL_OBJECT **Object, OUT EFI_DEBUGGER_SYMBOL_ENTRY **Entry)
Definition: EdbSymbol.c:477
UINTN EdbPrintSource(IN UINTN Address, IN BOOLEAN IsPrint)
Definition: EdbSymbol.c:2086
EFI_STATUS EdbAddCodeBuffer(IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate, IN CHAR16 *MapFileName, IN CHAR16 *CodeFileName, IN UINTN SourceBufferSize, IN VOID *SourceBuffer)
Definition: EdbSymbol.c:1630
EFI_STATUS EdbUnloadCode(IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate, IN CHAR16 *MapFileName, IN CHAR16 *FileName, OUT VOID **Buffer)
Definition: EdbSymbol.c:1554
EFI_STATUS Symboltoi(IN CHAR16 *Symbol, OUT UINTN *Address)
Definition: EdbSymbol.c:2222
EFI_STATUS EdbPatchSymbolRVA(IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate, IN CHAR16 *FileName, IN EDB_EBC_IMAGE_RVA_SEARCH_TYPE SearchType)
Definition: EdbSymbol.c:997
CHAR8 * FindSymbolStr(IN UINTN Address)
Definition: EdbSymbol.c:1733
EFI_STATUS EdbDeleteCodeBuffer(IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate, IN CHAR16 *MapFileName, IN CHAR16 *CodeFileName, IN VOID *SourceBuffer)
Definition: EdbSymbol.c:1674
#define IN
Definition: Base.h:279
#define OUT
Definition: Base.h:284
RETURN_STATUS EFI_STATUS
Definition: UefiBaseType.h:29