From af1a266670d040d2f4083ff309d732d648afba2a Mon Sep 17 00:00:00 2001 From: Angelos Mouzakitis Date: Tue, 10 Oct 2023 14:33:42 +0000 Subject: Add submodule dependency files Change-Id: Iaf8d18082d3991dec7c0ebbea540f092188eb4ec --- .../Universal/EbcDxe/EbcDebugger/EdbCmdBreak.c | 288 +++++++++++++++++++++ 1 file changed, 288 insertions(+) create mode 100644 roms/edk2/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdBreak.c (limited to 'roms/edk2/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdBreak.c') diff --git a/roms/edk2/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdBreak.c b/roms/edk2/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdBreak.c new file mode 100644 index 000000000..696703c4b --- /dev/null +++ b/roms/edk2/MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdBreak.c @@ -0,0 +1,288 @@ +/** @file + +Copyright (c) 2007, Intel Corporation. All rights reserved.
+SPDX-License-Identifier: BSD-2-Clause-Patent + + +**/ + +#include "Edb.h" + + +/** + + DebuggerCommand - BreakOnCALL. + + @param CommandArg The argument for this command + @param DebuggerPrivate EBC Debugger private data structure + @param ExceptionType Exception type. + @param SystemContext EBC system context. + + @retval EFI_DEBUG_CONTINUE formal return value + +**/ +EFI_DEBUG_STATUS +DebuggerBreakOnCALL ( + IN CHAR16 *CommandArg, + IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate, + IN EFI_EXCEPTION_TYPE ExceptionType, + IN OUT EFI_SYSTEM_CONTEXT SystemContext + ) +{ + // + // Check argument + // + if (CommandArg == NULL) { + if ((DebuggerPrivate->FeatureFlags & EFI_DEBUG_FLAG_EBC_BOC) == EFI_DEBUG_FLAG_EBC_BOC) { + EDBPrint (L"BOC on\n"); + } else { + EDBPrint (L"BOC off\n"); + } + } else if (StriCmp (CommandArg, L"on") == 0) { + DebuggerPrivate->FeatureFlags |= EFI_DEBUG_FLAG_EBC_BOC; + EDBPrint (L"BOC on\n"); + } else if (StriCmp (CommandArg, L"off") == 0) { + DebuggerPrivate->FeatureFlags &= ~EFI_DEBUG_FLAG_EBC_B_BOC; + EDBPrint (L"BOC off\n"); + } else { + EDBPrint (L"BOC - argument error\n"); + } + + // + // Done + // + return EFI_DEBUG_CONTINUE; +} + +/** + + DebuggerCommand BreakOnCALLEX. + + + @param CommandArg The argument for this command + @param DebuggerPrivate EBC Debugger private data structure + @param ExceptionType Exceptiont type. + @param SystemContext EBC system context. + + @retval EFI_DEBUG_CONTINUE formal return value + +**/ +EFI_DEBUG_STATUS +DebuggerBreakOnCALLEX ( + IN CHAR16 *CommandArg, + IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate, + IN EFI_EXCEPTION_TYPE ExceptionType, + IN OUT EFI_SYSTEM_CONTEXT SystemContext + ) +{ + // + // Check argument + // + if (CommandArg == NULL) { + if ((DebuggerPrivate->FeatureFlags & EFI_DEBUG_FLAG_EBC_BOCX) == EFI_DEBUG_FLAG_EBC_BOCX) { + EDBPrint (L"BOCX on\n"); + } else { + EDBPrint (L"BOCX off\n"); + } + } else if (StriCmp (CommandArg, L"on") == 0) { + DebuggerPrivate->FeatureFlags |= EFI_DEBUG_FLAG_EBC_BOCX; + EDBPrint (L"BOCX on\n"); + } else if (StriCmp (CommandArg, L"off") == 0) { + DebuggerPrivate->FeatureFlags &= ~EFI_DEBUG_FLAG_EBC_B_BOCX; + EDBPrint (L"BOCX off\n"); + } else { + EDBPrint (L"BOCX - argument error\n"); + } + + // + // Done + // + return EFI_DEBUG_CONTINUE; +} + +/** + + DebuggerCommand - BreakOnRET. + + + @param CommandArg The argument for this command + @param DebuggerPrivate EBC Debugger private data structure + @param ExceptionType Exception type. + @param SystemContext EBC system context. + + @retval EFI_DEBUG_CONTINUE formal return value + +**/ +EFI_DEBUG_STATUS +DebuggerBreakOnRET ( + IN CHAR16 *CommandArg, + IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate, + IN EFI_EXCEPTION_TYPE ExceptionType, + IN OUT EFI_SYSTEM_CONTEXT SystemContext + ) +{ + // + // Check argument + // + if (CommandArg == NULL) { + if ((DebuggerPrivate->FeatureFlags & EFI_DEBUG_FLAG_EBC_BOR) == EFI_DEBUG_FLAG_EBC_BOR) { + EDBPrint (L"BOR on\n"); + } else { + EDBPrint (L"BOR off\n"); + } + } else if (StriCmp (CommandArg, L"on") == 0) { + DebuggerPrivate->FeatureFlags |= EFI_DEBUG_FLAG_EBC_BOR; + EDBPrint (L"BOR on\n"); + } else if (StriCmp (CommandArg, L"off") == 0) { + DebuggerPrivate->FeatureFlags &= ~EFI_DEBUG_FLAG_EBC_B_BOR; + EDBPrint (L"BOR off\n"); + } else { + EDBPrint (L"BOR - argument error\n"); + } + + // + // Done + // + return EFI_DEBUG_CONTINUE; +} + +/** + + DebuggerCommand - BreakOnEntrypoint. + + + @param CommandArg The argument for this command + @param DebuggerPrivate EBC Debugger private data structure + @param ExceptionType Exception type. + @param SystemContext EBC system context. + + @retval EFI_DEBUG_CONTINUE formal return value + +**/ +EFI_DEBUG_STATUS +DebuggerBreakOnEntrypoint ( + IN CHAR16 *CommandArg, + IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate, + IN EFI_EXCEPTION_TYPE ExceptionType, + IN OUT EFI_SYSTEM_CONTEXT SystemContext + ) +{ + // + // Check argument + // + if (CommandArg == NULL) { + if ((DebuggerPrivate->FeatureFlags & EFI_DEBUG_FLAG_EBC_BOE) == EFI_DEBUG_FLAG_EBC_BOE) { + EDBPrint (L"BOE on\n"); + } else { + EDBPrint (L"BOE off\n"); + } + } else if (StriCmp (CommandArg, L"on") == 0) { + DebuggerPrivate->FeatureFlags |= EFI_DEBUG_FLAG_EBC_BOE; + EDBPrint (L"BOE on\n"); + } else if (StriCmp (CommandArg, L"off") == 0) { + DebuggerPrivate->FeatureFlags &= ~EFI_DEBUG_FLAG_EBC_B_BOE; + EDBPrint (L"BOE off\n"); + } else { + EDBPrint (L"BOE - argument error\n"); + } + + // + // Done + // + return EFI_DEBUG_CONTINUE; +} + +/** + + + DebuggerCommand - BreakOnThunk. + + + @param CommandArg The argument for this command + @param DebuggerPrivate EBC Debugger private data structure + @param ExceptionType Exception type. + @param SystemContext EBC system context. + + + @retval EFI_DEBUG_CONTINUE formal return value + +**/ +EFI_DEBUG_STATUS +DebuggerBreakOnThunk ( + IN CHAR16 *CommandArg, + IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate, + IN EFI_EXCEPTION_TYPE ExceptionType, + IN OUT EFI_SYSTEM_CONTEXT SystemContext + ) +{ + // + // Check argument + // + if (CommandArg == NULL) { + if ((DebuggerPrivate->FeatureFlags & EFI_DEBUG_FLAG_EBC_BOT) == EFI_DEBUG_FLAG_EBC_BOT) { + EDBPrint (L"BOT on\n"); + } else { + EDBPrint (L"BOT off\n"); + } + } else if (StriCmp (CommandArg, L"on") == 0) { + DebuggerPrivate->FeatureFlags |= EFI_DEBUG_FLAG_EBC_BOT; + EDBPrint (L"BOT on\n"); + } else if (StriCmp (CommandArg, L"off") == 0) { + DebuggerPrivate->FeatureFlags &= ~EFI_DEBUG_FLAG_EBC_B_BOT; + EDBPrint (L"BOT off\n"); + } else { + EDBPrint (L"BOT - argument error\n"); + } + + // + // Done + // + return EFI_DEBUG_CONTINUE; +} + +/** + + DebuggerCommand - BreakOnKey. + + + @param CommandArg The argument for this command + @param DebuggerPrivate EBC Debugger private data structure + @param ExceptionType Exception type. + @param SystemContext EBC system context. + + + @retval EFI_DEBUG_CONTINUE formal return value + +**/ +EFI_DEBUG_STATUS +DebuggerBreakOnKey ( + IN CHAR16 *CommandArg, + IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate, + IN EFI_EXCEPTION_TYPE ExceptionType, + IN OUT EFI_SYSTEM_CONTEXT SystemContext + ) +{ + // + // Check argument + // + if (CommandArg == NULL) { + if ((DebuggerPrivate->FeatureFlags & EFI_DEBUG_FLAG_EBC_BOK) == EFI_DEBUG_FLAG_EBC_BOK) { + EDBPrint (L"BOK on\n"); + } else { + EDBPrint (L"BOK off\n"); + } + } else if (StriCmp (CommandArg, L"on") == 0) { + DebuggerPrivate->FeatureFlags |= EFI_DEBUG_FLAG_EBC_BOK; + EDBPrint (L"BOK on\n"); + } else if (StriCmp (CommandArg, L"off") == 0) { + DebuggerPrivate->FeatureFlags &= ~EFI_DEBUG_FLAG_EBC_B_BOK; + EDBPrint (L"BOK off\n"); + } else { + EDBPrint (L"BOK - argument error\n"); + } + + // + // Done + // + return EFI_DEBUG_CONTINUE; +} -- cgit