From 8b4eff76bdff694e07ef8e8657b8487e8ad3fbe3 Mon Sep 17 00:00:00 2001 From: andrewfish Date: Fri, 2 Jul 2010 13:24:16 +0000 Subject: [PATCH] Make SEC ModuleEntryPoint build with Xcode. Just need another level of indirection git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10622 6f19259b-4bc3-4df7-8a09-765794883524 --- ArmRealViewEbPkg/SecForPei/Arm/ModuleEntryPoint.S | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/ArmRealViewEbPkg/SecForPei/Arm/ModuleEntryPoint.S b/ArmRealViewEbPkg/SecForPei/Arm/ModuleEntryPoint.S index f87aa58037..385dd334bb 100755 --- a/ArmRealViewEbPkg/SecForPei/Arm/ModuleEntryPoint.S +++ b/ArmRealViewEbPkg/SecForPei/Arm/ModuleEntryPoint.S @@ -30,6 +30,10 @@ .globl ASM_PFX(_ModuleEntryPoint) .globl ASM_PFX(StartupAddr) + +ASM_PFX(CEntryPointData): + .word ASM_PFX(StartupAddr) + ASM_PFX(_ModuleEntryPoint): // Turn off remapping NOR to 0. We can now use DRAM in low memory @@ -63,13 +67,11 @@ ASM_PFX(_ModuleEntryPoint): // move sec startup address into a data register // ensure we're jumping to FV version of the code (not boot remapped alias) -#ifndef __APPLE__ -// This does not generate a valid relocation for Xcode. Fix me... - ldr r4, ASM_PFX(StartupAddr) + ldr r5, ASM_PFX(CEntryPointData) // Extra level of indirection fixes Xcode relocation issue + ldr r4, [r5] // jump to SEC C code blx r4 -#endif ASM_PFX(ShouldNeverGetHere):