summaryrefslogtreecommitdiffstats
path: root/ArmRealViewEbPkg
diff options
context:
space:
mode:
authorandrewfish <andrewfish@6f19259b-4bc3-4df7-8a09-765794883524>2010-07-02 13:24:16 +0000
committerandrewfish <andrewfish@6f19259b-4bc3-4df7-8a09-765794883524>2010-07-02 13:24:16 +0000
commit8b4eff76bdff694e07ef8e8657b8487e8ad3fbe3 (patch)
tree99587580398cbe7d7d6446972c4560022268a773 /ArmRealViewEbPkg
parentafdfe8f02bdf8d563554bb620c001072862b064e (diff)
downloadedk2-8b4eff76bdff694e07ef8e8657b8487e8ad3fbe3.tar.gz
edk2-8b4eff76bdff694e07ef8e8657b8487e8ad3fbe3.tar.bz2
edk2-8b4eff76bdff694e07ef8e8657b8487e8ad3fbe3.zip
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
Diffstat (limited to 'ArmRealViewEbPkg')
-rwxr-xr-xArmRealViewEbPkg/SecForPei/Arm/ModuleEntryPoint.S10
1 files 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):