[Bug rtl-optimization/55153] [4.8 Regression] ICE: in begin_move_insn, at sched-ebb.c:205 with -fsched2-use-superblocks and __builtin_prefetch
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55153 --- Comment #7 from Andrew Pinski --- *** Bug 43056 has been marked as a duplicate of this bug. ***
[Bug rtl-optimization/55153] [4.8 Regression] ICE: in begin_move_insn, at sched-ebb.c:205 with -fsched2-use-superblocks and __builtin_prefetch
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55153 --- Comment #5 from Jakub Jelinek jakub at gcc dot gnu.org 2013-01-16 11:31:51 UTC --- Author: vmakarov Date: Tue Jan 15 16:47:36 2013 New Revision: 195211 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=195211 Log: 2013-01-15 Vladimir Makarov vmaka...@redhat.com PR rtl-optimization/pr55153 * sched-deps.c (sched_analyze_2): Add pending reads for prefetch. 2013-01-15 Vladimir Makarov vmaka...@redhat.com PR rtl-optimization/pr55153 * gcc.dg/pr55153.c: New. Added: trunk/gcc/testsuite/gcc.dg/pr55153.c Modified: trunk/gcc/ChangeLog trunk/gcc/sched-deps.c trunk/gcc/testsuite/ChangeLog
[Bug rtl-optimization/55153] [4.8 Regression] ICE: in begin_move_insn, at sched-ebb.c:205 with -fsched2-use-superblocks and __builtin_prefetch
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55153 Jakub Jelinek jakub at gcc dot gnu.org changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED --- Comment #6 from Jakub Jelinek jakub at gcc dot gnu.org 2013-01-16 15:41:46 UTC --- Fixed, the regression caused by the fix is tracked now as PR56005.
[Bug rtl-optimization/55153] [4.8 Regression] ICE: in begin_move_insn, at sched-ebb.c:205 with -fsched2-use-superblocks and __builtin_prefetch
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55153 --- Comment #4 from Jakub Jelinek jakub at gcc dot gnu.org 2013-01-15 21:51:36 UTC --- Thanks for working on this. Unfortunately it seems the http://gcc.gnu.org/viewcvs?root=gccview=revrev=195211 change (commit message didn't make it into this PR because of an extra pr after / ) regressed i386/pr45352.c testcase on i?86. ./cc1 -m32 -O3 -march=amdfam10 -fselective-scheduling2 -fsel-sched-pipelining -funroll-all-loops gcc.target/i386/pr45352.c ICEs now with: internal compiler error: in add_insn_mem_dependence, at sched-deps.c:1717
[Bug rtl-optimization/55153] [4.8 Regression] ICE: in begin_move_insn, at sched-ebb.c:205 with -fsched2-use-superblocks and __builtin_prefetch
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55153 Vladimir Makarov vmakarov at redhat dot com changed: What|Removed |Added CC||vmakarov at redhat dot com --- Comment #3 from Vladimir Makarov vmakarov at redhat dot com 2013-01-14 19:44:36 UTC --- (In reply to comment #2) Vlad, can you please have a look? Thanks. Ok, I started to work on this.
[Bug rtl-optimization/55153] [4.8 Regression] ICE: in begin_move_insn, at sched-ebb.c:205 with -fsched2-use-superblocks and __builtin_prefetch
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55153 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P1
[Bug rtl-optimization/55153] [4.8 Regression] ICE: in begin_move_insn, at sched-ebb.c:205 with -fsched2-use-superblocks and __builtin_prefetch
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55153 Jakub Jelinek jakub at gcc dot gnu.org changed: What|Removed |Added Target Milestone|--- |4.8.0
[Bug rtl-optimization/55153] [4.8 Regression] ICE: in begin_move_insn, at sched-ebb.c:205 with -fsched2-use-superblocks and __builtin_prefetch
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55153 Jakub Jelinek jakub at gcc dot gnu.org changed: What|Removed |Added CC||jakub at gcc dot gnu.org --- Comment #2 from Jakub Jelinek jakub at gcc dot gnu.org 2012-11-07 11:28:13 UTC --- I've tried to fix this similarly to PR48721: --- sched-deps.c.jj22012-10-17 17:18:21.0 +0200 +++ sched-deps.c2012-11-07 12:15:05.246124552 +0100 @@ -2907,7 +2907,10 @@ sched_analyze_insn (struct deps_desc *de { rtx next; next = next_nonnote_nondebug_insn (insn); - if (next BARRIER_P (next)) + /* Don't schedule anything after an unconditional return jump. */ + if (returnjump_p (insn) ! condjump_p (insn)) +reg_pending_barrier = TRUE_BARRIER; + else if (next BARRIER_P (next)) reg_pending_barrier = MOVE_BARRIER; else { but that didn't help. The difference between reload and LRA seems to be just in that old reload emitted a deleted note after the prefetch for some reason, and after adding simple_return jump and barrier after it that note was still following the barrier, while with LRA there is no such deleted note at the end. Still the scheduler seems to attempt to do DCE of the prefetch (why? Isn't the prefetch meaningful on its own?). Vlad, can you please have a look? Thanks.
[Bug rtl-optimization/55153] [4.8 Regression] ICE: in begin_move_insn, at sched-ebb.c:205 with -fsched2-use-superblocks and __builtin_prefetch
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55153 Marek Polacek mpolacek at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed||2012-10-31 CC||mpolacek at gcc dot gnu.org Ever Confirmed|0 |1 --- Comment #1 from Marek Polacek mpolacek at gcc dot gnu.org 2012-10-31 21:59:38 UTC --- Started with http://gcc.gnu.org/viewcvs?view=revisionrevision=192719