Is TinyCC ARM prolog :
mov ip, sp
stmdb sp!, {fp, ip, lr}
add fp, sp, #C

compatible with this ?
From Microsoft http://msdn.microsoft.com/en-us/library/ms254231.aspx

The following examples show how to construct several ARM prologs.

ARM Prolog with frame in R11.
MOV    r12, r13        ; Save stack on entry if needed.
STMDB  r13!, {r0-r3}    ; As needed
STMDB  r13!, {r4-r12, r14}  ; As needed
SUB    r11, r12, #16    ; Sets frame past args
<stack link if needed>

MOV    r12, r13        ; Save stack on entry if needed.
STMDB  r13!, {r0-r3}    ; As needed
STMDB  r13!, {r4-r12, r14}  ; As needed
SUB    r11, r12, #16    ; Sets frame past args
<stack link if needed>
ARM Prolog with no frame.

MOV    r12, r13
STMDB  r13!, {r0-r3}        ; As needed
STMDB  r13! {[r4-r12,]|[r13,]r14}  ; As needed
<stack link if needed>
<note: r12 is not used if the stack (r13) is the first register saved>



_______________________________________________
Tinycc-devel mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/tinycc-devel

Reply via email to