------- Comment #2 from abel at gcc dot gnu dot org 2009-12-25 10:44 ------- Confirmed. This needs my uncommitted patch from http://gcc.gnu.org/ml/gcc-patches/2008-09/msg01931.html (which is correctly saving and restoring can_issue_more variable in the presence of multiple scheduling points) amended by the below fix by Alexander, as the original patch failed to update one place. The -fsched-pressure flag has anything to do with the bug only because on ppc64 it results in the different value of issue_rate.
Again we will need help with testing this on ppc64 as a combined patch with other bugfixes. diff --git a/gcc/sel-sched.c b/gcc/sel-sched.c --- a/gcc/sel-sched.c +++ b/gcc/sel-sched.c @@ -4103,7 +4104,7 @@ invoke_reorder_hooks (fence_t fence) ran_hook = true; } else - issue_more = issue_rate; + issue_more = FENCE_ISSUE_MORE (fence); -- abel at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |abel at gcc dot gnu dot org, | |amonakov at gcc dot gnu dot | |org AssignedTo|unassigned at gcc dot gnu |abel at gcc dot gnu dot org |dot org | Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Last reconfirmed|0000-00-00 00:00:00 |2009-12-25 10:44:11 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42389