audk/ArmPkg/Library
Ard Biesheuvel 1b02a38329 ArmPkg/ArmExceptionLib: reimplement register stack/unstack routines
This replaces the somewhat opaque preprocessor based stack/unstack macros
with open coded ldp/stp sequences to preserve the interrupted context
before handing over to the exception handler in C.

This removes various arithmetic operations on the stack pointer, and
reduces the exception return critical section to its minimum size (i.e.,
the bare minimum required to populate the ELR and SPSR registers and invoke
the eret).

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
Reviewed-by: Eugene Cohen <eugene@hp.com>
2016-03-22 14:48:06 +01:00
..
ArmArchTimerLib ArmPkg: ArmArchTimerLib: conditionally rebase to actual timer frequency 2015-02-02 12:01:48 +00:00
ArmCacheMaintenanceLib ArmPkg: update InvalidateInstructionCacheRange to flush only to PoU 2015-12-08 15:58:53 +00:00
ArmDisassemblerLib ArmPkg/ArmDisassemblerLib: ARMThumb and AArch64 fixes 2014-09-09 15:57:18 +00:00
ArmDmaLib ArmPkg: Rectify file modes 2016-01-30 12:25:59 +00:00
ArmExceptionLib ArmPkg/ArmExceptionLib: reimplement register stack/unstack routines 2016-03-22 14:48:06 +01:00
ArmGenericTimerPhyCounterLib ArmPkg: add ArmGenericTimerCounterLib implementation using physical timer 2014-09-09 16:06:10 +00:00
ArmGenericTimerVirtCounterLib ArmPkg: add ArmGenericTimerCounterLib implementation using virtual timer 2014-09-09 16:07:43 +00:00
ArmGicArchLib ArmPkg: cache detected revision in ArmGicArchLib 2015-07-28 20:45:10 +00:00
ArmGicArchSecLib ArmPkg: copy ArmGicArchLib to ArmGicArchSecLib 2015-07-28 20:44:58 +00:00
ArmHvcLib ArmPkg: update RVCT assembly functions to use new RVCT_ASM_EXPORT macro 2015-12-03 20:28:02 +00:00
ArmLib ArmPkg/ArmLib: add ArmReadHcr to enable read-modify-write of HCR 2016-03-16 12:19:25 +01:00
ArmPsciResetSystemLib Renamed ArmPlatformPkg/ArmVirtualizationPkg into ArmVirtPkg 2015-05-29 13:50:43 +00:00
ArmSmcLib ArmPkg: update RVCT assembly functions to use new RVCT_ASM_EXPORT macro 2015-12-03 20:28:02 +00:00
ArmSmcLibNull ArmPkg: update RVCT assembly functions to use new RVCT_ASM_EXPORT macro 2015-12-03 20:28:02 +00:00
ArmSoftFloatLib ArmPkg/ArmSoftfloatLib: add missing entry points for RVCT 2015-12-17 16:29:23 +00:00
BaseMemoryLibStm ArmPkg: Rectify file modes 2016-01-30 12:25:59 +00:00
BaseMemoryLibVstm ArmPkg: Rectify file modes 2016-01-30 12:25:59 +00:00
BdsLib ArmPkg/BdsLib: Send RemainingDevicePath to PXE Load File protocol 2015-12-07 16:51:35 +00:00
CompilerIntrinsicsLib ArmPkg: Rectify file modes 2016-01-30 12:25:59 +00:00
DebugAgentSymbolsBaseLib ArmPkg: use unified asm syntax for CLANG 2015-12-15 15:01:42 +00:00
DebugPeCoffExtraActionLib ArmPkg: Rectify file modes 2016-01-30 12:25:59 +00:00
DebugUncachedMemoryAllocationLib ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
DefaultExceptionHandlerLib ArmPkg: DefaultExceptionHandler fixes for use with DxeCore 2016-02-15 10:37:52 +01:00
PeiServicesTablePointerLib ArmPkg/PeiServicesTablePointerLib: add missing MigratePeiServicesTablePointer() 2015-11-25 20:06:41 +00:00
RvdPeCoffExtraActionLib ArmPkg/Semihostlib: Rename semi-hosting open option 2014-10-27 10:37:20 +00:00
SemiHostingDebugLib ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
SemiHostingSerialPortLib ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
SemihostLib ArmPkg: Rectify file modes 2016-01-30 12:25:59 +00:00
UncachedMemoryAllocationLib ArmPkg/UncachedMemoryAllocationLib: fix warning about uninitialized local var 2015-11-25 19:50:05 +00:00