blob: 68ed1c5c59355bf4a2338013083f14b7bfac17ed [file] [log] [blame]
## @file
# Instance of CpuExceptionHandlerLib Library for ARM/AArch64 architectures
#
# This library instance is used for modules that will implement exception
# handlers in-place (by programming VBAR). The exception handlers will be
# generated with alignment as required by the processor architecture. The
# alignment must be propagated into the parent FFS/FV through FDF build rules
# for the relevant module types (i.e. Align=Auto).
#
# Note that using this library instance can cause growth to the size of the FV
# due to the padding added by the build tools to meet the vector alignment
# requirements and may not be desirable for space-sensitive FVs (uncompressed /
# XIP components). The alternative library instance, ArmRelocateExceptionLib
# should be considered for these applications.
#
# Copyright (c) 2011-2012, ARM Limited. All rights reserved.
# Copyright (c) 2016 HP Development Company, L.P.
#
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
#
[Defines]
INF_VERSION = 0x00010005
BASE_NAME = ArmExceptionLib
FILE_GUID = A9796991-4E88-47F0-87C5-D96A1D270539
MODULE_TYPE = BASE
VERSION_STRING = 1.0
LIBRARY_CLASS = CpuExceptionHandlerLib
[Sources.common]
ArmExceptionLib.c
[Sources.Arm]
Arm/ArmException.c
Arm/ExceptionSupport.S | GCC
[Sources.AARCH64]
AArch64/AArch64Exception.c
AArch64/ExceptionSupport.S
[Packages]
MdePkg/MdePkg.dec
MdeModulePkg/MdeModulePkg.dec
ArmPkg/ArmPkg.dec
[LibraryClasses]
ArmLib
BaseMemoryLib
CacheMaintenanceLib
DebugLib
DefaultExceptionHandlerLib
MemoryAllocationLib
[Pcd]
gArmTokenSpaceGuid.PcdDebuggerExceptionSupport
gArmTokenSpaceGuid.PcdCpuVectorBaseAddress