-fuse-caller-save - Support in lra
commitf2cc6708f2348577cc886ffdf648a817d193a964
authorvries <vries@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 30 May 2014 08:43:05 +0000 (30 08:43 +0000)
committervries <vries@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 30 May 2014 08:43:05 +0000 (30 08:43 +0000)
treebf5a31454d3701aa688b9681b11ee36cdfa0438f
parentdef44e012535109b987ad98162e1aca5b9c658d8
-fuse-caller-save - Support in lra

2014-05-30  Tom de Vries  <tom@codesourcery.com>

* lra-int.h (struct lra_reg): Add field actual_call_used_reg_set.
* lra.c (initialize_lra_reg_info_element): Add init of
actual_call_used_reg_set field.
(lra): Call lra_create_live_ranges before lra_inheritance for
-fuse-caller-save.
* lra-assigns.c (lra_assign): Allow call_used_regs to cross calls for
-fuse-caller-save.
* lra-constraints.c (need_for_call_save_p): Use actual_call_used_reg_set
instead of call_used_reg_set for -fuse-caller-save.
* lra-lives.c (process_bb_lives): Calculate actual_call_used_reg_set.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211074 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/lra-assigns.c
gcc/lra-constraints.c
gcc/lra-int.h
gcc/lra-lives.c
gcc/lra.c