3 Copyright (c) 2007, Intel Corporation. All rights reserved.<BR>
4 SPDX-License-Identifier: BSD-2-Clause-Patent
14 DebuggerCommand - BreakOnCALL.
16 @param CommandArg The argument for this command
17 @param DebuggerPrivate EBC Debugger private data structure
18 @param ExceptionType Exception type.
19 @param SystemContext EBC system context.
21 @retval EFI_DEBUG_CONTINUE formal return value
26 IN CHAR16
*CommandArg
,
27 IN EFI_DEBUGGER_PRIVATE_DATA
*DebuggerPrivate
,
28 IN EFI_EXCEPTION_TYPE ExceptionType
,
29 IN OUT EFI_SYSTEM_CONTEXT SystemContext
35 if (CommandArg
== NULL
) {
36 if ((DebuggerPrivate
->FeatureFlags
& EFI_DEBUG_FLAG_EBC_BOC
) == EFI_DEBUG_FLAG_EBC_BOC
) {
37 EDBPrint (L
"BOC on\n");
39 EDBPrint (L
"BOC off\n");
41 } else if (StriCmp (CommandArg
, L
"on") == 0) {
42 DebuggerPrivate
->FeatureFlags
|= EFI_DEBUG_FLAG_EBC_BOC
;
43 EDBPrint (L
"BOC on\n");
44 } else if (StriCmp (CommandArg
, L
"off") == 0) {
45 DebuggerPrivate
->FeatureFlags
&= ~EFI_DEBUG_FLAG_EBC_B_BOC
;
46 EDBPrint (L
"BOC off\n");
48 EDBPrint (L
"BOC - argument error\n");
54 return EFI_DEBUG_CONTINUE
;
59 DebuggerCommand BreakOnCALLEX.
62 @param CommandArg The argument for this command
63 @param DebuggerPrivate EBC Debugger private data structure
64 @param ExceptionType Exceptiont type.
65 @param SystemContext EBC system context.
67 @retval EFI_DEBUG_CONTINUE formal return value
71 DebuggerBreakOnCALLEX (
72 IN CHAR16
*CommandArg
,
73 IN EFI_DEBUGGER_PRIVATE_DATA
*DebuggerPrivate
,
74 IN EFI_EXCEPTION_TYPE ExceptionType
,
75 IN OUT EFI_SYSTEM_CONTEXT SystemContext
81 if (CommandArg
== NULL
) {
82 if ((DebuggerPrivate
->FeatureFlags
& EFI_DEBUG_FLAG_EBC_BOCX
) == EFI_DEBUG_FLAG_EBC_BOCX
) {
83 EDBPrint (L
"BOCX on\n");
85 EDBPrint (L
"BOCX off\n");
87 } else if (StriCmp (CommandArg
, L
"on") == 0) {
88 DebuggerPrivate
->FeatureFlags
|= EFI_DEBUG_FLAG_EBC_BOCX
;
89 EDBPrint (L
"BOCX on\n");
90 } else if (StriCmp (CommandArg
, L
"off") == 0) {
91 DebuggerPrivate
->FeatureFlags
&= ~EFI_DEBUG_FLAG_EBC_B_BOCX
;
92 EDBPrint (L
"BOCX off\n");
94 EDBPrint (L
"BOCX - argument error\n");
100 return EFI_DEBUG_CONTINUE
;
105 DebuggerCommand - BreakOnRET.
108 @param CommandArg The argument for this command
109 @param DebuggerPrivate EBC Debugger private data structure
110 @param ExceptionType Exception type.
111 @param SystemContext EBC system context.
113 @retval EFI_DEBUG_CONTINUE formal return value
118 IN CHAR16
*CommandArg
,
119 IN EFI_DEBUGGER_PRIVATE_DATA
*DebuggerPrivate
,
120 IN EFI_EXCEPTION_TYPE ExceptionType
,
121 IN OUT EFI_SYSTEM_CONTEXT SystemContext
127 if (CommandArg
== NULL
) {
128 if ((DebuggerPrivate
->FeatureFlags
& EFI_DEBUG_FLAG_EBC_BOR
) == EFI_DEBUG_FLAG_EBC_BOR
) {
129 EDBPrint (L
"BOR on\n");
131 EDBPrint (L
"BOR off\n");
133 } else if (StriCmp (CommandArg
, L
"on") == 0) {
134 DebuggerPrivate
->FeatureFlags
|= EFI_DEBUG_FLAG_EBC_BOR
;
135 EDBPrint (L
"BOR on\n");
136 } else if (StriCmp (CommandArg
, L
"off") == 0) {
137 DebuggerPrivate
->FeatureFlags
&= ~EFI_DEBUG_FLAG_EBC_B_BOR
;
138 EDBPrint (L
"BOR off\n");
140 EDBPrint (L
"BOR - argument error\n");
146 return EFI_DEBUG_CONTINUE
;
151 DebuggerCommand - BreakOnEntrypoint.
154 @param CommandArg The argument for this command
155 @param DebuggerPrivate EBC Debugger private data structure
156 @param ExceptionType Exception type.
157 @param SystemContext EBC system context.
159 @retval EFI_DEBUG_CONTINUE formal return value
163 DebuggerBreakOnEntrypoint (
164 IN CHAR16
*CommandArg
,
165 IN EFI_DEBUGGER_PRIVATE_DATA
*DebuggerPrivate
,
166 IN EFI_EXCEPTION_TYPE ExceptionType
,
167 IN OUT EFI_SYSTEM_CONTEXT SystemContext
173 if (CommandArg
== NULL
) {
174 if ((DebuggerPrivate
->FeatureFlags
& EFI_DEBUG_FLAG_EBC_BOE
) == EFI_DEBUG_FLAG_EBC_BOE
) {
175 EDBPrint (L
"BOE on\n");
177 EDBPrint (L
"BOE off\n");
179 } else if (StriCmp (CommandArg
, L
"on") == 0) {
180 DebuggerPrivate
->FeatureFlags
|= EFI_DEBUG_FLAG_EBC_BOE
;
181 EDBPrint (L
"BOE on\n");
182 } else if (StriCmp (CommandArg
, L
"off") == 0) {
183 DebuggerPrivate
->FeatureFlags
&= ~EFI_DEBUG_FLAG_EBC_B_BOE
;
184 EDBPrint (L
"BOE off\n");
186 EDBPrint (L
"BOE - argument error\n");
192 return EFI_DEBUG_CONTINUE
;
198 DebuggerCommand - BreakOnThunk.
201 @param CommandArg The argument for this command
202 @param DebuggerPrivate EBC Debugger private data structure
203 @param ExceptionType Exception type.
204 @param SystemContext EBC system context.
207 @retval EFI_DEBUG_CONTINUE formal return value
211 DebuggerBreakOnThunk (
212 IN CHAR16
*CommandArg
,
213 IN EFI_DEBUGGER_PRIVATE_DATA
*DebuggerPrivate
,
214 IN EFI_EXCEPTION_TYPE ExceptionType
,
215 IN OUT EFI_SYSTEM_CONTEXT SystemContext
221 if (CommandArg
== NULL
) {
222 if ((DebuggerPrivate
->FeatureFlags
& EFI_DEBUG_FLAG_EBC_BOT
) == EFI_DEBUG_FLAG_EBC_BOT
) {
223 EDBPrint (L
"BOT on\n");
225 EDBPrint (L
"BOT off\n");
227 } else if (StriCmp (CommandArg
, L
"on") == 0) {
228 DebuggerPrivate
->FeatureFlags
|= EFI_DEBUG_FLAG_EBC_BOT
;
229 EDBPrint (L
"BOT on\n");
230 } else if (StriCmp (CommandArg
, L
"off") == 0) {
231 DebuggerPrivate
->FeatureFlags
&= ~EFI_DEBUG_FLAG_EBC_B_BOT
;
232 EDBPrint (L
"BOT off\n");
234 EDBPrint (L
"BOT - argument error\n");
240 return EFI_DEBUG_CONTINUE
;
245 DebuggerCommand - BreakOnKey.
248 @param CommandArg The argument for this command
249 @param DebuggerPrivate EBC Debugger private data structure
250 @param ExceptionType Exception type.
251 @param SystemContext EBC system context.
254 @retval EFI_DEBUG_CONTINUE formal return value
259 IN CHAR16
*CommandArg
,
260 IN EFI_DEBUGGER_PRIVATE_DATA
*DebuggerPrivate
,
261 IN EFI_EXCEPTION_TYPE ExceptionType
,
262 IN OUT EFI_SYSTEM_CONTEXT SystemContext
268 if (CommandArg
== NULL
) {
269 if ((DebuggerPrivate
->FeatureFlags
& EFI_DEBUG_FLAG_EBC_BOK
) == EFI_DEBUG_FLAG_EBC_BOK
) {
270 EDBPrint (L
"BOK on\n");
272 EDBPrint (L
"BOK off\n");
274 } else if (StriCmp (CommandArg
, L
"on") == 0) {
275 DebuggerPrivate
->FeatureFlags
|= EFI_DEBUG_FLAG_EBC_BOK
;
276 EDBPrint (L
"BOK on\n");
277 } else if (StriCmp (CommandArg
, L
"off") == 0) {
278 DebuggerPrivate
->FeatureFlags
&= ~EFI_DEBUG_FLAG_EBC_B_BOK
;
279 EDBPrint (L
"BOK off\n");
281 EDBPrint (L
"BOK - argument error\n");
287 return EFI_DEBUG_CONTINUE
;