Emit the prologue/epilogue using frame offsets.
Record register save offsets in ix86_frame. Move SP/FP offsets into the global state; update them everywhere we currently handle CFA offsets. Use that global state to choose base registers and offsets for the register saves and restores. There is a bug fix contained herein, whereby r11 could be clobbered along an indirect sibcall path when the stack frame is very large (>2GB). The emit_restore_{sse_,}regs_using_mov functions didn't handle this case, but pro_epilogue_adjust_stack does. From-SVN: r162888
Showing
This diff is collapsed.
Click to expand it.
Please
register
or
sign in
to comment