1 /** @file
2   Contains the empty version of the EBC Debugger hooks, to be used when
3   compiling the regular EBC VM module.
4   As debugging is not needed for the standard EBC VM, all calls are left empty.
5 
6   The EBC Debugger defines its own version for these calls in EbdHooks.c.
7 
8   Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>
9   SPDX-License-Identifier: BSD-2-Clause-Patent
10 
11 **/
12 
13 #include "EbcDebuggerHook.h"
14 
15 /**
16 
17   The hook in InitializeEbcDriver.
18 
19   @param Handle           - The EbcDebugProtocol handle.
20   @param EbcDebugProtocol - The EbcDebugProtocol interface.
21 
22 **/
23 VOID
EbcDebuggerHookInit(IN EFI_HANDLE Handle,IN EFI_DEBUG_SUPPORT_PROTOCOL * EbcDebugProtocol)24 EbcDebuggerHookInit (
25   IN EFI_HANDLE                  Handle,
26   IN EFI_DEBUG_SUPPORT_PROTOCOL  *EbcDebugProtocol
27   )
28 {
29   return;
30 }
31 
32 /**
33 
34 The hook in UnloadImage for EBC Interpreter.
35 
36 **/
37 VOID
EbcDebuggerHookUnload(VOID)38 EbcDebuggerHookUnload (
39   VOID
40   )
41 {
42   return;
43 }
44 
45 /**
46 
47   The hook in EbcUnloadImage.
48   Currently do nothing here.
49 
50   @param  Handle          The EbcImage handle.
51 
52 **/
53 VOID
EbcDebuggerHookEbcUnloadImage(IN EFI_HANDLE Handle)54 EbcDebuggerHookEbcUnloadImage (
55   IN EFI_HANDLE                  Handle
56   )
57 {
58   return;
59 }
60 
61 /**
62 
63   The hook in ExecuteEbcImageEntryPoint.
64 
65   @param  VmPtr - pointer to VM context.
66 
67 **/
68 VOID
EbcDebuggerHookExecuteEbcImageEntryPoint(IN VM_CONTEXT * VmPtr)69 EbcDebuggerHookExecuteEbcImageEntryPoint (
70   IN VM_CONTEXT *VmPtr
71   )
72 {
73   return;
74 }
75 
76 /**
77 
78   The hook in ExecuteEbcImageEntryPoint.
79 
80   @param  VmPtr - pointer to VM context.
81 
82 **/
83 VOID
EbcDebuggerHookEbcInterpret(IN VM_CONTEXT * VmPtr)84 EbcDebuggerHookEbcInterpret (
85   IN VM_CONTEXT *VmPtr
86   )
87 {
88   return;
89 }
90 
91 /**
92   The hook in EbcExecute, before ExecuteFunction.
93 
94   @param  VmPtr - pointer to VM context.
95 
96 **/
97 VOID
EbcDebuggerHookExecuteStart(IN VM_CONTEXT * VmPtr)98 EbcDebuggerHookExecuteStart (
99   IN VM_CONTEXT *VmPtr
100   )
101 {
102   return;
103 }
104 
105 /**
106   The hook in EbcExecute, after ExecuteFunction.
107 
108   @param  VmPtr - pointer to VM context.
109 
110 **/
111 VOID
EbcDebuggerHookExecuteEnd(IN VM_CONTEXT * VmPtr)112 EbcDebuggerHookExecuteEnd (
113   IN VM_CONTEXT *VmPtr
114   )
115 {
116   return;
117 }
118 
119 /**
120 
121   The hook in ExecuteCALL, before move IP.
122 
123   @param  VmPtr - pointer to VM context.
124 
125 **/
126 VOID
EbcDebuggerHookCALLStart(IN VM_CONTEXT * VmPtr)127 EbcDebuggerHookCALLStart (
128   IN VM_CONTEXT *VmPtr
129   )
130 {
131   return;
132 }
133 
134 /**
135 
136   The hook in ExecuteCALL, after move IP.
137 
138   @param  VmPtr - pointer to VM context.
139 
140 **/
141 VOID
EbcDebuggerHookCALLEnd(IN VM_CONTEXT * VmPtr)142 EbcDebuggerHookCALLEnd (
143   IN VM_CONTEXT *VmPtr
144   )
145 {
146   return;
147 }
148 
149 /**
150 
151   The hook in ExecuteCALL, before call EbcLLCALLEX.
152 
153   @param  VmPtr - pointer to VM context.
154 
155 **/
156 VOID
EbcDebuggerHookCALLEXStart(IN VM_CONTEXT * VmPtr)157 EbcDebuggerHookCALLEXStart (
158   IN VM_CONTEXT *VmPtr
159   )
160 {
161   return;
162 }
163 
164 /**
165 
166   The hook in ExecuteCALL, after call EbcLLCALLEX.
167 
168   @param  VmPtr - pointer to VM context.
169 
170 **/
171 VOID
EbcDebuggerHookCALLEXEnd(IN VM_CONTEXT * VmPtr)172 EbcDebuggerHookCALLEXEnd (
173   IN VM_CONTEXT *VmPtr
174   )
175 {
176   return;
177 }
178 
179 /**
180 
181   The hook in ExecuteRET, before move IP.
182 
183   @param  VmPtr - pointer to VM context.
184 
185 **/
186 VOID
EbcDebuggerHookRETStart(IN VM_CONTEXT * VmPtr)187 EbcDebuggerHookRETStart (
188   IN VM_CONTEXT *VmPtr
189   )
190 {
191   return;
192 }
193 
194 /**
195 
196   The hook in ExecuteRET, after move IP.
197 
198   @param  VmPtr - pointer to VM context.
199 
200 **/
201 VOID
EbcDebuggerHookRETEnd(IN VM_CONTEXT * VmPtr)202 EbcDebuggerHookRETEnd (
203   IN VM_CONTEXT *VmPtr
204   )
205 {
206   return;
207 }
208 
209 /**
210 
211   The hook in ExecuteJMP, before move IP.
212 
213   @param  VmPtr - pointer to VM context.
214 
215 **/
216 VOID
EbcDebuggerHookJMPStart(IN VM_CONTEXT * VmPtr)217 EbcDebuggerHookJMPStart (
218   IN VM_CONTEXT *VmPtr
219   )
220 {
221   return;
222 }
223 
224 /**
225 
226   The hook in ExecuteJMP, after move IP.
227 
228   @param  VmPtr - pointer to VM context.
229 
230 **/
231 VOID
EbcDebuggerHookJMPEnd(IN VM_CONTEXT * VmPtr)232 EbcDebuggerHookJMPEnd (
233   IN VM_CONTEXT *VmPtr
234   )
235 {
236   return;
237 }
238 
239 /**
240 
241   The hook in ExecuteJMP8, before move IP.
242 
243   @param  VmPtr - pointer to VM context.
244 
245 **/
246 VOID
EbcDebuggerHookJMP8Start(IN VM_CONTEXT * VmPtr)247 EbcDebuggerHookJMP8Start (
248   IN VM_CONTEXT *VmPtr
249   )
250 {
251   return;
252 }
253 
254 /**
255 
256   The hook in ExecuteJMP8, after move IP..
257 
258   @param  VmPtr - pointer to VM context.
259 
260 **/
261 VOID
EbcDebuggerHookJMP8End(IN VM_CONTEXT * VmPtr)262 EbcDebuggerHookJMP8End (
263   IN VM_CONTEXT *VmPtr
264   )
265 {
266   return;
267 }
268