This is the mail archive of the gcc-bugs@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]

[Bug rtl-optimization/60268] [4.9 regression] ICE: in rank_for_schedule, at haifa-sched.c:2557


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60268

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |vmakarov at gcc dot gnu.org

--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
So perhaps:
--- gcc/haifa-sched.c    2014-02-18 08:18:53.045024428 +0100
+++ gcc/haifa-sched.c    2014-02-19 07:58:38.191381581 +0100
@@ -2550,7 +2550,7 @@ rank_for_schedule (const void *x, const
     return INSN_LUID (tmp) - INSN_LUID (tmp2);
     }

-  if (live_range_shrinkage_p)
+  if (live_range_shrinkage_p && sched_pressure != SCHED_PRESSURE_NONE)
     {
       /* Don't use SCHED_PRESSURE_MODEL -- it results in much worse
      code.  */

BTW, why
      if (sched_pressure != SCHED_PRESSURE_NONE)
        free_global_sched_pressure_data ();
when free_global_sched_pressure_data () contains the same guard and thus could
be called unconditionally?


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]