drc: fix eabi alignment

This commit is contained in:
notaz 2011-09-04 17:37:46 +03:00
parent c21718e922
commit 0a74ef66e1
1 changed files with 9 additions and 2 deletions

View File

@ -171,13 +171,20 @@
#define restore_flags() ;\
msr cpsr_f, reg_flags ;\
#ifdef __ARM_EABI__
@ must align stack
#define call_c_saved_regs r2, r3, r12, lr
#else
#define call_c_saved_regs r3, r12, lr
#endif
@ Calls a C function - all caller save registers which are important to the
@ dynarec and to returning from this function are saved.
#define call_c_function(function) ;\
stmdb sp!, { r3, r12, lr } ;\
stmdb sp!, { call_c_saved_regs } ;\
bl function ;\
ldmia sp!, { r3, r12, lr } ;\
ldmia sp!, { call_c_saved_regs } ;\
@ Update the GBA hardware (video, sound, input, etc)