If we are using the vector table in place, there is no need to make an indirect call to the common handler routine from the vector table entries, so just use a straight branch instruction in that case.
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheu...@linaro.org> --- ArmPkg/Library/ArmExceptionLib/AArch64/ExceptionSupport.S | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ArmPkg/Library/ArmExceptionLib/AArch64/ExceptionSupport.S b/ArmPkg/Library/ArmExceptionLib/AArch64/ExceptionSupport.S index c7ea061a93ea..0fd304db2dbf 100644 --- a/ArmPkg/Library/ArmExceptionLib/AArch64/ExceptionSupport.S +++ b/ArmPkg/Library/ArmExceptionLib/AArch64/ExceptionSupport.S @@ -187,9 +187,13 @@ VECTOR_BASE(ExceptionHandlersStart) mov x0, #\val // Jump to our general handler to deal with all the common parts and process the exception. +#if defined(ARM_RELOCATE_VECTORS) ldr x1, =ASM_PFX(CommonExceptionEntry) br x1 .ltorg +#else + b ASM_PFX(CommonExceptionEntry) +#endif .endm // -- 2.5.0 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel