[Bug tree-optimization/112496] [13/14 Regression] ICE: in vectorizable_nonlinear_induction, at tree-vect-loop.cc with bit fields
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112496 Sam James changed: What|Removed |Added Resolution|--- |FIXED CC||sjames at gcc dot gnu.org Status|NEW |RESOLVED --- Comment #6 from Sam James --- Fixed for 13.3 then.
[Bug tree-optimization/112496] [13/14 Regression] ICE: in vectorizable_nonlinear_induction, at tree-vect-loop.cc with bit fields
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112496 --- Comment #5 from CVS Commits --- The releases/gcc-13 branch has been updated by hongtao Liu : https://gcc.gnu.org/g:ed73ad337739a4244e8040d19b6e567c4101b58a commit r13-8068-ged73ad337739a4244e8040d19b6e567c4101b58a Author: liuhongt Date: Mon Nov 13 17:56:49 2023 +0800 Fix ICE in vectorizable_nonlinear_induction with bitfield. if (TREE_CODE (init_expr) == INTEGER_CST) init_expr = fold_convert (TREE_TYPE (vectype), init_expr); else gcc_assert (tree_nop_conversion_p (TREE_TYPE (vectype), TREE_TYPE (init_expr))); and init_expr is a 24 bit integer type while vectype has 32bit components. The "fix" is to bail out instead of asserting. gcc/ChangeLog: PR tree-optimization/112496 * tree-vect-loop.cc (vectorizable_nonlinear_induction): Return false when !tree_nop_conversion_p (TREE_TYPE (vectype), TREE_TYPE (init_expr)). gcc/testsuite/ChangeLog: * gcc.target/i386/pr112496.c: New test. (cherry picked from commit f28306b4fd309b579c8a4a5bf2f1b24fa40f8f7f)
[Bug tree-optimization/112496] [13/14 Regression] ICE: in vectorizable_nonlinear_induction, at tree-vect-loop.cc with bit fields
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112496 --- Comment #4 from CVS Commits --- The master branch has been updated by hongtao Liu : https://gcc.gnu.org/g:f28306b4fd309b579c8a4a5bf2f1b24fa40f8f7f commit r14-5433-gf28306b4fd309b579c8a4a5bf2f1b24fa40f8f7f Author: liuhongt Date: Mon Nov 13 17:56:49 2023 +0800 Fix ICE in vectorizable_nonlinear_induction with bitfield. if (TREE_CODE (init_expr) == INTEGER_CST) init_expr = fold_convert (TREE_TYPE (vectype), init_expr); else gcc_assert (tree_nop_conversion_p (TREE_TYPE (vectype), TREE_TYPE (init_expr))); and init_expr is a 24 bit integer type while vectype has 32bit components. The "fix" is to bail out instead of asserting. gcc/ChangeLog: PR tree-optimization/112496 * tree-vect-loop.cc (vectorizable_nonlinear_induction): Return false when !tree_nop_conversion_p (TREE_TYPE (vectype), TREE_TYPE (init_expr)). gcc/testsuite/ChangeLog: * gcc.target/i386/pr112496.c: New test.
[Bug tree-optimization/112496] [13/14 Regression] ICE: in vectorizable_nonlinear_induction, at tree-vect-loop.cc with bit fields
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112496 --- Comment #3 from Hongtao.liu --- (In reply to Richard Biener from comment #2) > if (TREE_CODE (init_expr) == INTEGER_CST) > init_expr = fold_convert (TREE_TYPE (vectype), init_expr); > else > gcc_assert (tree_nop_conversion_p (TREE_TYPE (vectype), >TREE_TYPE (init_expr))); > > and init_expr is a 24 bit integer type while vectype has 32bit components. > > The "fix" is to bail out instead of asserting. Agree.
[Bug tree-optimization/112496] [13/14 Regression] ICE: in vectorizable_nonlinear_induction, at tree-vect-loop.cc with bit fields
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112496 Richard Biener changed: What|Removed |Added Priority|P3 |P2 CC||crazylht at gmail dot com --- Comment #2 from Richard Biener --- if (TREE_CODE (init_expr) == INTEGER_CST) init_expr = fold_convert (TREE_TYPE (vectype), init_expr); else gcc_assert (tree_nop_conversion_p (TREE_TYPE (vectype), TREE_TYPE (init_expr))); and init_expr is a 24 bit integer type while vectype has 32bit components. The "fix" is to bail out instead of asserting.
[Bug tree-optimization/112496] [13/14 Regression] ICE: in vectorizable_nonlinear_induction, at tree-vect-loop.cc with bit fields
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112496 Andrew Pinski changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever confirmed|0 |1 Keywords||needs-bisection Last reconfirmed||2023-11-12 --- Comment #1 from Andrew Pinski --- Confirmed.
[Bug tree-optimization/112496] [13/14 Regression] ICE: in vectorizable_nonlinear_induction, at tree-vect-loop.cc with bit fields
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112496 Andrew Pinski changed: What|Removed |Added Known to fail||13.1.0, 13.2.0 Target Milestone|--- |13.3 Summary|GCC: 14: internal compiler |[13/14 Regression] ICE: in |error: in |vectorizable_nonlinear_indu |vectorizable_nonlinear_indu |ction, at tree-vect-loop.cc |ction, at |with bit fields |tree-vect-loop.cc:9573 | Known to work||12.3.0