dietlibc/dietlibc-0.33-arm-stack-align.patch
2011-01-09 14:39:22 +01:00

31 lines
873 B
Diff

From f0da937d99ef1c32b53fb8c61c3a0225c2dc71c4 Mon Sep 17 00:00:00 2001
From: Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
Date: Sat, 8 Jan 2011 01:14:13 +0100
Subject: [PATCH 02/20] ARM: fix stack alignment
ARM EABI requires an 8-byte stack alignment. Previous startup sequence
destroyed it by popping the 4-byte 'argc' from the aligned stack.
Signed-off-by: Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
---
arm/start.S | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/arm/start.S b/arm/start.S
index ccbac48..d68d49d 100644
--- a/arm/start.S
+++ b/arm/start.S
@@ -19,8 +19,8 @@
_start:
mov fp, #0 @ clear the frame pointer
- ldr a1, [sp], #4 @ argc
- mov a2, sp @ argv
+ ldr a1, [sp] @ argc
+ add a2, sp, #4 @ argv
ldr ip, .L3
add a3, a2, a1, lsl #2 @ &argv[argc]
add a3, a3, #4 @ envp
--
1.7.3.4