summaryrefslogtreecommitdiff
path: root/ArmPlatformPkg/PrePi
diff options
context:
space:
mode:
authoroliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524>2011-11-09 11:52:37 +0000
committeroliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524>2011-11-09 11:52:37 +0000
commit5f5b907c0dd693d2ba64e4727734bdf39604c0a8 (patch)
tree743abc4785e3950fb944a0c30989be4d6dbf7bcd /ArmPlatformPkg/PrePi
parent008d25427c5b33e399075dde88bd3667ae3a104d (diff)
downloadedk2-platforms-5f5b907c0dd693d2ba64e4727734bdf39604c0a8.tar.xz
ArmPlatformPkg: Fix Global Variable region initialization when GlobalVariable's size is zero
The exit loop was not considering a size of zero for the Global Variable region. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12678 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'ArmPlatformPkg/PrePi')
-rwxr-xr-xArmPlatformPkg/PrePi/ModuleEntryPoint.S6
-rw-r--r--ArmPlatformPkg/PrePi/ModuleEntryPoint.asm6
2 files changed, 6 insertions, 6 deletions
diff --git a/ArmPlatformPkg/PrePi/ModuleEntryPoint.S b/ArmPlatformPkg/PrePi/ModuleEntryPoint.S
index ed44710a60..75728c983f 100755
--- a/ArmPlatformPkg/PrePi/ModuleEntryPoint.S
+++ b/ArmPlatformPkg/PrePi/ModuleEntryPoint.S
@@ -127,10 +127,10 @@ _SetGlobals:
mov r3, sp
mov r2, #0x0
_InitGlobals:
- str r2, [r3], #4
cmp r3, r1
- bne _InitGlobals
-
+ beq _PrepareArguments
+ str r2, [r3], #4
+ b _InitGlobals
_PrepareArguments:
mov r0, r5
diff --git a/ArmPlatformPkg/PrePi/ModuleEntryPoint.asm b/ArmPlatformPkg/PrePi/ModuleEntryPoint.asm
index 0f14d498d7..5392e80925 100644
--- a/ArmPlatformPkg/PrePi/ModuleEntryPoint.asm
+++ b/ArmPlatformPkg/PrePi/ModuleEntryPoint.asm
@@ -128,10 +128,10 @@ _SetGlobals
mov r3, sp
mov r2, #0x0
_InitGlobals
- str r2, [r3], #4
cmp r3, r1
- bne _InitGlobals
-
+ beq _PrepareArguments
+ str r2, [r3], #4
+ b _InitGlobals
_PrepareArguments
mov r0, r5