ArmPkg/ArmExceptionLib: Add implementation of new API
authorJian J Wang <>
Thu, 7 Dec 2017 12:16:04 +0000 (20:16 +0800)
committerStar Zeng <>
Fri, 8 Dec 2017 06:38:49 +0000 (14:38 +0800)
This patch add implementation of following new API introduced into
CpuExceptionHandlerLib. Since this lib hasn't support Stack Guard
and stack switch, the new method just calls original

  InitializeCpuExceptionHandlersEx (

Cc: Leif Lindholm <>
Cc: Ard Biesheuvel <>
Cc: Jiewen Yao <>
Suggested-by: Ayellet Wolman <>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Jian J Wang <>
Reviewed-by: Jeff Fan <>
Reviewed-by: Ard Biesheuvel <>

index e8ea1f159d65f12da970c10ed2e410553198189d..cebb26a4ce4cab81b735913eb55902df1dcdc909 100644 (file)
@@ -320,3 +320,36 @@ CommonCExceptionHandler(
   DefaultExceptionHandler(ExceptionType, SystemContext);\r
+  Initializes all CPU exceptions entries with optional extra initializations.\r
+  By default, this method should include all functionalities implemented by\r
+  InitializeCpuExceptionHandlers(), plus extra initialization works, if any.\r
+  This could be done by calling InitializeCpuExceptionHandlers() directly\r
+  in this method besides the extra works.\r
+  InitData is optional and its use and content are processor arch dependent.\r
+  The typical usage of it is to convey resources which have to be reserved\r
+  elsewhere and are necessary for the extra initializations of exception.\r
+  @param[in]  VectorInfo    Pointer to reserved vector list.\r
+  @param[in]  InitData      Pointer to data optional for extra initializations\r
+                            of exception.\r
+  @retval EFI_SUCCESS             The exceptions have been successfully\r
+                                  initialized.\r
+  @retval EFI_INVALID_PARAMETER   VectorInfo or InitData contains invalid\r
+                                  content.\r
+InitializeCpuExceptionHandlersEx (\r
+  IN EFI_VECTOR_HANDOFF_INFO            *VectorInfo OPTIONAL,\r
+  )\r
+  return InitializeCpuExceptionHandlers (VectorInfo);\r