**/\r
\r
#include "CpuDxe.h" \r
-#include <Library/CacheMaintenanceLib.h>\r
\r
-extern BOOLEAN gExceptionContext;\r
\r
VOID\r
ExceptionHandlersStart (\r
return EFI_SUCCESS;\r
}\r
\r
-CHAR8 *gExceptionTypeString[] = {\r
- "Reset",\r
- "Undefined Instruction",\r
- "SWI",\r
- "Prefetch Abort",\r
- "Data Abort",\r
- "Undefined",\r
- "IRQ",\r
- "FIQ"\r
-};\r
+\r
\r
VOID\r
EFIAPI\r
{\r
BOOLEAN Dispatched = FALSE;\r
\r
- gExceptionContext = TRUE; \r
- \r
+ \r
if (ExceptionType <= MAX_ARM_EXCEPTION) {\r
if (gDebuggerExceptionHandlers[ExceptionType]) {\r
//\r
ASSERT (FALSE);\r
}\r
\r
- gExceptionContext = FALSE; \r
-\r
if (Dispatched) {\r
//\r
// We did work so this was an expected ExceptionType\r
return;\r
}\r
\r
- //\r
- // Code after here is the default exception handler...\r
- //\r
- DEBUG ((EFI_D_ERROR, "%a Exception from %08x\n", gExceptionTypeString[ExceptionType], SystemContext.SystemContextArm->PC));\r
- ASSERT (FALSE);\r
-\r
+ DefaultExceptionHandler (ExceptionType, SystemContext);\r
}\r
\r
\r