On 30.01.2014 9:42, Andrey Belevantsev wrote:
Hello,

Ping.


As detailed in http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58960#c6, we
fail to use the DF liveness info in the register pressure sensitive
scheduling for the new blocks as we do not properly compute it in this
case.  The patch fixes this by avoiding to use the sched-pressure for the
new regions, as currently these are only ia64 recovery blocks and supposed
to be cold.  In the case we'd get other cases of the new blocks, this may
be reconsidered.  The other options of computing the DF info sketched at
the above link do not seem plausible for this stage.

Bootstrapped and tested on ia64, also tested by Andreas Schwab on ia64 (see
PR log).  OK for trunk?

Andrey

2013-01-30  Andrey Belevantsev  <a...@ispras.ru>

     PR rtl-optimization/58960

     * haifa-sched.c (alloc_global_sched_pressure_data): New, factored out
from ...
     (sched_init) ... here.
     (free_global_sched_pressure_data): New, factored out from ...
     (sched_finish): ... here.
     * sched-int.h (free_global_sched_pressure_data): Declare.
     * sched-rgn.c (nr_regions_initial): New static global.
     (haifa_find_rgns): Initialize it.
     (schedule_region): Disable sched-pressure for the newly generated
regions.

Reply via email to