2008-11-14 Vladimir Makarov <vmakarov@redhat.com>
commit68d4bdfb01c01a089f27aeb85053a723d43abf64
authorvmakarov <vmakarov@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 14 Nov 2008 16:41:56 +0000 (14 16:41 +0000)
committervmakarov <vmakarov@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 14 Nov 2008 16:41:56 +0000 (14 16:41 +0000)
tree12060aac5280cd64ffa8d76772ce606ac96eab1b
parent54670ae63732730f450f038b9fc057b6cd9e8366
2008-11-14  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/37397
* ira-int.h (struct ira_allocno): New member bad_spill_p.
(ALLOCNO_BAD_SPILL_P): New macro.

* ira-color.c (push_allocnos_to_stack): Check ALLOCNO_BAD_SPILL_P.

* ira-build.c (ira_create_allocno): Initialize
ALLOCNO_BAD_SPILL_P.
(create_cap_allocno, propagate_allocno_info,
remove_unnecessary_allocnos): Set up or update
ALLOCNO_BAD_SPILL_P.
(update_bad_spill_attribute): New function.
(ira_build): Call it.

* ira-costs.c (record_reg_classes): Set up ALLOCNO_BAD_SPILL_P.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@141860 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/ira-build.c
gcc/ira-color.c
gcc/ira-costs.c
gcc/ira-int.h