Commit 0bca11de authored by kgardas's avatar kgardas Committed by Simon Marlow
Browse files

fix ARM StgCRun to not save and restore r11/fp register twice

parent f3f8c906
......@@ -632,7 +632,7 @@ StgRun(StgFunPtr f, StgRegTable *basereg) {
/*
* save callee-saves registers on behalf of the STG code.
*/
"stmfd sp!, {r4-r11, fp, ip, lr}\n\t"
"stmfd sp!, {r4-r10, fp, ip, lr}\n\t"
#if !defined(arm_HOST_ARCH_PRE_ARMv6)
"vstmdb sp!, {d8-d11}\n\t"
#endif
......@@ -669,7 +669,7 @@ StgRun(StgFunPtr f, StgRegTable *basereg) {
#if !defined(arm_HOST_ARCH_PRE_ARMv6)
"vldmia sp!, {d8-d11}\n\t"
#endif
"ldmfd sp!, {r4-r11, fp, ip, lr}\n\t"
"ldmfd sp!, {r4-r10, fp, ip, lr}\n\t"
: "=r" (r)
: "r" (f), "r" (basereg), "i" (RESERVED_C_STACK_BYTES)
#if !defined(__thumb__)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment