This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
Sure, but that's not the problem. The problem is the code quality increase isn't measurable.
So, number of webs reduced (number of conflicts will be definitely reduced) and possibility of graph colorization increased. I hope to colorize full graph in next colorization phase.
I'm agree that this method increased a count of allocator passes, but this method must improve code quality.
Denis.I tried this once, actually, about a week ago, and it caused bootstrap failures.
PS: Especially for Daniel ! Look to ra-rewrite.c: actual_spill
-------------- fragment of ra-rewrite.c ---------------- actual_spill (spill_p) int spill_p ATTRIBUTE_UNUSED; { int i; bitmap new_deaths;
/* If we have a webs colored by an_unusable_color (ie we think that they are
already in frame) we must put such webs to frame. */
if (/* !spill_p && */ subst_to_stack_p ())
#------^^^^^^^^^^^^^^^^ Just remove comments and you will have extra
# passes only at end of allocation process.
/* If you uncomment the SPILL_P usage then you will have a calls to
assign_stack_slots only at end of allocation process.
See to the caller of actual_spill. */
{
-------------------------------------------------------
Daniel. Try to remove comments around `!spill_p &&' and compare generated code
quality for both cases (commented and not commented `!spill_p &&').
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |