r148067 - in /trunk/gcc: ChangeLog config/i386/...
jakub@gcc.gnu.org
jakub@gcc.gnu.org
Mon Jun 1 19:49:00 GMT 2009
Author: jakub
Date: Mon Jun 1 19:49:57 2009
New Revision: 148067
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=148067
Log:
* config/i386/i386.c (queued_cfa_restores): New static variable.
(ix86_add_cfa_restore_note, ix86_add_queued_cfa_restore_notes): New
functions.
(pro_epilogue_adjust_stack): Call ix86_add_queued_cfa_restore_notes.
(ix86_emit_restore_reg_using_pop): Add RED_OFFSET argument.
Set RTX_FRAME_RELATED_P immediately after adding a REG_CFA_* note.
Call ix86_add_cfa_restore_note instead of adding REG_CFA_OFFSET
note unconditionally.
(ix86_emit_restore_regs_using_mov): Likewise.
(ix86_emit_restore_sse_regs_using_mov): Likewise.
(ix86_emit_restore_regs_using_pop): Add RED_OFFSET argument, pass
it through to ix86_emit_restore_reg_using_pop.
(ix86_emit_leave): Add RED_OFFSET argument. Call
ix86_add_queued_cfa_restore_notes. Call ix86_add_cfa_restore_note
instead of adding REG_CFA_OFFSET note unconditionally.
(ix86_expand_epilogue): Compute RED_OFFSET, pass it down to
the above functions. Call ix86_add_queued_cfa_restore_notes when
needed.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/i386/i386.c
More information about the Gcc-cvs
mailing list