summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ArmPlatformPkg/PrePeiCore/AArch64/PrePeiCoreEntryPoint.S3
-rw-r--r--ArmPlatformPkg/PrePi/AArch64/ModuleEntryPoint.S3
2 files changed, 6 insertions, 0 deletions
diff --git a/ArmPlatformPkg/PrePeiCore/AArch64/PrePeiCoreEntryPoint.S b/ArmPlatformPkg/PrePeiCore/AArch64/PrePeiCoreEntryPoint.S
index 0950fd0..9e2e49d 100644
--- a/ArmPlatformPkg/PrePeiCore/AArch64/PrePeiCoreEntryPoint.S
+++ b/ArmPlatformPkg/PrePeiCore/AArch64/PrePeiCoreEntryPoint.S
@@ -76,6 +76,9 @@ _PrepareArguments:
// Ensure we're jumping to FV version of the code (not boot remapped alias)
ldr x3, =ASM_PFX(CEntryPoint)
+ // Set the frame pointer to NULL so any backtraces terminate here
+ mov x29, xzr
+
// Jump to PrePeiCore C code
// x0 = mp_id
// x1 = pei_core_address
diff --git a/ArmPlatformPkg/PrePi/AArch64/ModuleEntryPoint.S b/ArmPlatformPkg/PrePi/AArch64/ModuleEntryPoint.S
index a81709d..2069161 100644
--- a/ArmPlatformPkg/PrePi/AArch64/ModuleEntryPoint.S
+++ b/ArmPlatformPkg/PrePi/AArch64/ModuleEntryPoint.S
@@ -109,6 +109,9 @@ _PrepareArguments:
// Ensure we're jumping to FV version of the code (not boot remapped alias)
ldr x4, =ASM_PFX(CEntryPoint)
+ // Set the frame pointer to NULL so any backtraces terminate here
+ mov x29, xzr
+
// Jump to PrePiCore C code
// x0 = MpId
// x1 = UefiMemoryBase