mep.c (machine_function): Add frame_locked flag.
authorDJ Delorie <dj@redhat.com>
Mon, 31 Aug 2009 21:37:49 +0000 (17:37 -0400)
committerDJ Delorie <dj@gcc.gnu.org>
Mon, 31 Aug 2009 21:37:49 +0000 (17:37 -0400)
commite756464b1f73a6d9ecc9477e45ce28589f7ef041
treee0524f0ea2cac457ba4979f8bd2d86fa22117a53
parentc8affb455c7c4816a57abdba5afc3fcdf5b5115f
mep.c (machine_function): Add frame_locked flag.

* config/mep/mep.c (machine_function): Add frame_locked flag.  Set
it once we start generating the prologue or epilogue.
(mep_call_saves_register): If the frame is locked, re-use cached values.
(mep_assign_save_slots): New, broken out from mep_expand_prologue.
(mep_expand_prologue): Call it.
(mep_expand_epilogue): Likewise.
(mep_start_function): Use the same logic as mep_expand_prologue.
(mep_pass_by_reference): Make logic more readable.
(mep_return_in_memory): Zero-sized objects are passed in memory.
(mep_reorg_noframe): Make sure we have accurate REG_DEAD notes.

From-SVN: r151248
gcc/ChangeLog
gcc/config/mep/mep.c