[Bug target/37381] [4.4 Regression] ICE in ia64_speculate_insn, at config/ia64/ia64.c:6902
--- Comment #12 from amonakov at gcc dot gnu dot org 2008-10-16 17:31 --- Subject: Bug 37381 Author: amonakov Date: Thu Oct 16 17:30:06 2008 New Revision: 141177 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=141177 Log: 2008-10-16 Alexander Monakov [EMAIL PROTECTED] PR target/37381 * gcc.c-torture/compile/pr37381.c: New test. Added: trunk/gcc/testsuite/gcc.c-torture/compile/pr37381.c Modified: trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37381
[Bug target/37381] [4.4 Regression] ICE in ia64_speculate_insn, at config/ia64/ia64.c:6902
--- Comment #13 from amonakov at gcc dot gnu dot org 2008-10-16 17:42 --- H.J., thanks for reminding. Closing again. -- amonakov at gcc dot gnu dot org changed: What|Removed |Added Status|REOPENED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37381
[Bug target/37381] [4.4 Regression] ICE in ia64_speculate_insn, at config/ia64/ia64.c:6902
--- Comment #10 from amonakov at gcc dot gnu dot org 2008-10-14 13:41 --- Since Andrey has just committed ia64 changes from sel-sched branch to trunk, the underlying problem is fixed and ICEs on original testcase and mentioned regression tests are gone. Closing as fixed. -- amonakov at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37381
[Bug target/37381] [4.4 Regression] ICE in ia64_speculate_insn, at config/ia64/ia64.c:6902
--- Comment #11 from hjl dot tools at gmail dot com 2008-10-14 21:50 --- I didn't see the testcase in comment #2 in gcc. -- hjl dot tools at gmail dot com changed: What|Removed |Added Status|RESOLVED|REOPENED Resolution|FIXED | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37381
[Bug target/37381] [4.4 Regression] ICE in ia64_speculate_insn, at config/ia64/ia64.c:6902
--- Comment #9 from hjl dot tools at gmail dot com 2008-10-13 08:57 --- Revision 141079 gaves: +FAIL: gfortran.dg/structure_constructor_1.f03 -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions (internal compiler error) +FAIL: gfortran.dg/structure_constructor_1.f03 -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions (test for excess errors) +FAIL: gfortran.dg/structure_constructor_1.f03 -O3 -fomit-frame-pointer -funroll-loops (internal compiler error) +FAIL: gfortran.dg/structure_constructor_1.f03 -O3 -fomit-frame-pointer -funroll-loops (test for excess errors) They failed with [EMAIL PROTECTED] gfortran]$ /export/gnu/import/svn/gcc-test/bld/gcc/testsuite/gfortran/../../gfortran -B/export/gnu/import/svn/gcc-test/bld/gcc/testsuite/gfortran/../../ /export/gnu/import/svn/gcc-test/src-trunk/gcc/testsuite/gfortran.dg/structure_constructor_1.f03 -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions -pedantic-errors -L/export/gnu/import/svn/gcc-test/bld/ia64-unknown-linux-gnu/./libgfortran/.libs -L/export/gnu/import/svn/gcc-test/bld/ia64-unknown-linux-gnu/./libgfortran/.libs -L/export/gnu/import/svn/gcc-test/bld/ia64-unknown-linux-gnu/./libiberty -lm -o ./structure_constructor_1.exe /export/gnu/import/svn/gcc-test/src-trunk/gcc/testsuite/gfortran.dg/structure_constructor_1.f03: In function âtestâ: /export/gnu/import/svn/gcc-test/src-trunk/gcc/testsuite/gfortran.dg/structure_constructor_1.f03:70: internal compiler error: in ia64_speculate_insn, at config/ia64/ia64.c:6905 Please submit a full bug report, with preprocessed source if appropriate. See http://gcc.gnu.org/bugs.html for instructions. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37381
[Bug target/37381] [4.4 Regression] ICE in ia64_speculate_insn, at config/ia64/ia64.c:6902
--- Comment #8 from sje at cup dot hp dot com 2008-09-22 16:35 --- I'll try to review the IA64 sel-sched patch over the next couple of weeks. I can't approve the workaround since it is not IA64 specific (it is in haifa-sched.c). -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37381
[Bug target/37381] [4.4 Regression] ICE in ia64_speculate_insn, at config/ia64/ia64.c:6902
--- Comment #7 from abel at gcc dot gnu dot org 2008-09-22 06:20 --- The patch implementing ia64 changes needed for the selective scheduler can be found at http://gcc.gnu.org/ml/gcc-patches/2008-08/msg01669.html. [The first version of the patch with some summary is at http://gcc.gnu.org/ml/gcc-patches/2008-06/msg00117.html. What is changed from that summary is that per Ian's suggestion we call compute_alignments from machine_reorg manually instead of rearranging the pass sequence.] I was going to ping them, but HJ did that first. It is important that we get that in for 4.4, because otherwise selective scheduler will be non-functional on ia64. However, I presume reviewing the changes will take some time, so it could make sense to fix this bug first. The patch for the bug is simple, and it is not a problem to revert it when committing the rest of sel-sched changes. On the sel-sched branch, I have restored the config/ia64/* files to be in line with mainline before merge. I will revert this on a branch in two-three days, so that the sel-sched branch will contain a fully functional selective scheduler on ia64. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37381
[Bug target/37381] [4.4 Regression] ICE in ia64_speculate_insn, at config/ia64/ia64.c:6902
--- Comment #6 from sje at cup dot hp dot com 2008-09-19 23:01 --- I am not sure what I would be reviewing. Alexander, do you want me to review the patch from comment #4 as a fix for this bug or is there another patch you would like to propose to bring the ia64 sel-sched changes over. I checked out the sel-sched branch but I don't see any real differences between ia64.c on that branch and on main line. What changes would be checked in that would make the change in comment #4 unnecessary. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37381
[Bug target/37381] [4.4 Regression] ICE in ia64_speculate_insn, at config/ia64/ia64.c:6902
--- Comment #5 from hjl dot tools at gmail dot com 2008-09-19 05:20 --- Steve, can you review ia64 changes from sel-sched branch? When sel-sched branch branch was merged into trunk, ia64 changes were left out and are still pending for review. -- hjl dot tools at gmail dot com changed: What|Removed |Added CC||sje at cup dot hp dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37381
[Bug target/37381] [4.4 Regression] ICE in ia64_speculate_insn, at config/ia64/ia64.c:6902
-- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Priority|P3 |P2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37381
[Bug target/37381] [4.4 Regression] ICE in ia64_speculate_insn, at config/ia64/ia64.c:6902
--- Comment #4 from amonakov at gcc dot gnu dot org 2008-09-08 10:38 --- Scheduling of instructions dependent on speculative loads was implemented a bit differently on sel-sched branch and on trunk (before the merge). Since ia64.c changes were not checked in, a discrepancy appeared, resulting in an ICE when attempting to schedule an instruction dependent on speculative load. This issue is fixed by restoring the scheduler behaviour to the pre-merge state. This change will have to be reverted when ia64 changes are approved (handling of BE_IN_SPEC bits will be implemented in back-end). Bootstrapped and regtested on ia64-linux. I will add the testcase and re-post to [EMAIL PROTECTED] PR target/37381 * haifa-sched.c (sched_speculate_insn): Filter BE_IN_SPEC bits before passing dependence status to back-end. Index: gcc/haifa-sched.c === --- gcc/haifa-sched.c (revision 140093) +++ gcc/haifa-sched.c (working copy) @@ -4288,7 +4288,7 @@ sched_speculate_insn (rtx insn, ds_t req !(request BEGIN_SPEC)) return 0; - return targetm.sched.speculate_insn (insn, request, new_pat); + return targetm.sched.speculate_insn (insn, request BEGIN_SPEC, new_pat); } static int -- amonakov at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |amonakov at gcc dot gnu dot |dot org |org Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2008-09-08 10:38:12 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37381
[Bug target/37381] [4.4 Regression] ICE in ia64_speculate_insn, at config/ia64/ia64.c:6902
--- Comment #3 from hjl dot tools at gmail dot com 2008-09-07 20:06 --- Adding -mno-sched-ar-data-spec fixes the crash. This bug is introduced by selective scheduling. -- hjl dot tools at gmail dot com changed: What|Removed |Added CC||amonakov at gmail dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37381
[Bug target/37381] [4.4 Regression] ICE in ia64_speculate_insn, at config/ia64/ia64.c:6902
--- Comment #1 from tbm at cyrius dot com 2008-09-05 08:04 --- Created an attachment (id=16228) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16228action=view) Preprocessed code -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37381
[Bug target/37381] [4.4 Regression] ICE in ia64_speculate_insn, at config/ia64/ia64.c:6902
--- Comment #2 from tbm at cyrius dot com 2008-09-05 08:04 --- Created an attachment (id=16229) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16229action=view) Slightly reduced testcase -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37381
[Bug target/37381] [4.4 Regression] ICE in ia64_speculate_insn, at config/ia64/ia64.c:6902
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||abel at ispras dot ru Target Milestone|--- |4.4.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37381