]> git.proxmox.com Git - mirror_edk2.git/blame - MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbSymbol.h
MdeModulePkg/EbcDxe: Avoid Non-Boolean type used as Boolean
[mirror_edk2.git] / MdeModulePkg / Universal / EbcDxe / EbcDebugger / EdbSymbol.h
CommitLineData
e8a5ac7c 1/** @file\r
748edcd5 2\r
e8a5ac7c
DB
3Copyright (c) 2007, Intel Corporation. All rights reserved.<BR>\r
4This program and the accompanying materials\r
748edcd5
PB
5are licensed and made available under the terms and conditions of the BSD License\r
6which accompanies this distribution. The full text of the license may be found at\r
7http://opensource.org/licenses/bsd-license.php\r
8\r
9THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
10WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
11\r
748edcd5 12\r
e8a5ac7c 13**/\r
748edcd5
PB
14\r
15#ifndef _EFI_EDB_SYMBOL_H_\r
16#define _EFI_EDB_SYMBOL_H_\r
17\r
18#include <Uefi.h>\r
19\r
20//\r
21// The default base address is 0x10000000\r
22//\r
23#define EFI_DEBUGGER_DEFAULT_LINK_IMAGEBASE 0x10000000\r
24\r
25#define EFI_DEBUGGER_MAX_SYMBOL_ADDRESS_DELTA_VALUE 0x100000 // 1 M delta\r
26\r
27typedef enum {\r
28 EdbMatchSymbolTypeSameAdderss,\r
29 EdbMatchSymbolTypeNearestAddress,\r
30 EdbMatchSymbolTypeLowerAddress,\r
31 EdbMatchSymbolTypeUpperAddress,\r
32 EdbMatchSymbolTypeMax,\r
33} EDB_MATCH_SYMBOL_TYPE;\r
34\r
35typedef enum {\r
36 EdbEbcImageRvaSearchTypeAny,\r
37 EdbEbcImageRvaSearchTypeFirst,\r
38 EdbEbcImageRvaSearchTypeLast,\r
39 EdbEbcImageRvaSearchTypeMax,\r
40} EDB_EBC_IMAGE_RVA_SEARCH_TYPE;\r
41\r
42UINTN\r
43EbdFindSymbolAddress (\r
44 IN UINTN Address,\r
45 IN EDB_MATCH_SYMBOL_TYPE Type,\r
46 OUT EFI_DEBUGGER_SYMBOL_OBJECT **Object,\r
47 OUT EFI_DEBUGGER_SYMBOL_ENTRY **Entry\r
48 );\r
49\r
50EFI_STATUS\r
51EdbLoadSymbol (\r
52 IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,\r
53 IN CHAR16 *FileName,\r
54 IN UINTN BufferSize,\r
55 IN VOID *Buffer\r
56 );\r
57\r
58EFI_STATUS\r
59EdbUnloadSymbol (\r
60 IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,\r
61 IN CHAR16 *FileName\r
62 );\r
63\r
64EFI_STATUS\r
65EdbPatchSymbolRVA (\r
66 IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,\r
67 IN CHAR16 *FileName,\r
68 IN EDB_EBC_IMAGE_RVA_SEARCH_TYPE SearchType\r
69 );\r
70\r
71EFI_STATUS\r
72EdbLoadCode (\r
73 IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,\r
74 IN CHAR16 *MapFileName,\r
75 IN CHAR16 *FileName,\r
76 IN UINTN BufferSize,\r
77 IN VOID *Buffer\r
78 );\r
79\r
80EFI_STATUS\r
81EdbUnloadCode (\r
82 IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,\r
83 IN CHAR16 *MapFileName,\r
84 IN CHAR16 *FileName,\r
85 OUT VOID **Buffer\r
86 );\r
87\r
88EFI_STATUS\r
89EdbAddCodeBuffer (\r
90 IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,\r
91 IN CHAR16 *MapFileName,\r
92 IN CHAR16 *CodeFileName,\r
93 IN UINTN SourceBufferSize,\r
94 IN VOID *SourceBuffer\r
95 );\r
96\r
97EFI_STATUS\r
98EdbDeleteCodeBuffer (\r
99 IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate,\r
100 IN CHAR16 *MapFileName,\r
101 IN CHAR16 *CodeFileName,\r
102 IN VOID *SourceBuffer\r
103 );\r
104\r
105CHAR8 *\r
106FindSymbolStr (\r
107 IN UINTN Address\r
108 );\r
109\r
110UINTN\r
111EdbPrintSource (\r
112 IN UINTN Address,\r
113 IN BOOLEAN IsPrint\r
114 );\r
115\r
116EFI_STATUS\r
117Symboltoi (\r
118 IN CHAR16 *Symbol,\r
119 OUT UINTN *Address\r
120 );\r
121\r
122#endif\r