summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@cvs.openbsd.org>2016-10-03 22:13:31 +0000
committerMark Kettenis <kettenis@cvs.openbsd.org>2016-10-03 22:13:31 +0000
commit752528b588c78fc6cbfcb6fd830ec72fe0f39217 (patch)
tree96064fcff825d22bbd2c105419b57cf8ce4e972d
parent81b7418b5dac944a2f5f3ae045e228d597e10a9c (diff)
Simplify code that sets up a stack frame for running .init code to be more
AEABI-like. ok tom@, jsg@
-rw-r--r--lib/csu/arm/md_init.h8
1 files changed, 3 insertions, 5 deletions
diff --git a/lib/csu/arm/md_init.h b/lib/csu/arm/md_init.h
index 4fe866c23cc..9e9aaa1fa60 100644
--- a/lib/csu/arm/md_init.h
+++ b/lib/csu/arm/md_init.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: md_init.h,v 1.8 2016/09/08 18:56:58 kettenis Exp $ */
+/* $OpenBSD: md_init.h,v 1.9 2016/10/03 22:13:30 kettenis Exp $ */
/*-
* Copyright (c) 2001 Ross Harvey
@@ -58,9 +58,7 @@
" .type " #entry_pt ",%function \n" \
" .align 4 \n" \
#entry_pt": \n" \
- " mov ip, sp \n" \
- " stmfd sp!, {fp, ip, lr, pc} \n" \
- " sub fp, ip, #4 \n" \
+ " push {r4, lr} \n" \
" /* fall thru */ \n" \
" .previous")
@@ -68,7 +66,7 @@
#define MD_SECTION_EPILOGUE(sect) \
__asm ( \
".section "#sect",\"ax\",%progbits \n" \
- " ldmea fp, {fp, sp, pc} \n" \
+ " pop {r4, pc} \n" \
" .previous")