[Bug tree-optimization/109392] [12/13 Regression] ICE in tree_vec_extract, at tree-vect-generic.cc:177 since r12-117-gb972e036f40c
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109392 --- Comment #5 from CVS Commits --- The master branch has been updated by Jeff Law : https://gcc.gnu.org/g:101380a8394c22a7a2ea70de2060ee93716156e2 commit r13-7126-g101380a8394c22a7a2ea70de2060ee93716156e2 Author: Jakub Jelinek Date: Sat Apr 8 12:21:42 2023 -0600 PR tree-optimization/109392 If we have an object with SSA_NAME_OCCURS_IN_ABNORMAL_PHI, then maybe_push_res_to_seq may fail. Directly build the extraction for that case. PR tree-optimization/109392 gcc/ * tree-vect-generic.cc (tree_vec_extract): Handle failure of maybe_push_res_to_seq better. gcc/testsuite/ * gcc.dg/pr109392.c: New test.
[Bug tree-optimization/109392] [12/13 Regression] ICE in tree_vec_extract, at tree-vect-generic.cc:177 since r12-117-gb972e036f40c
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109392 Jakub Jelinek changed: What|Removed |Added Assignee|unassigned at gcc dot gnu.org |jakub at gcc dot gnu.org Status|NEW |ASSIGNED --- Comment #4 from Jakub Jelinek --- Created attachment 54807 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=54807=edit gcc13-pr109392.patch Untested fix.
[Bug tree-optimization/109392] [12/13 Regression] ICE in tree_vec_extract, at tree-vect-generic.cc:177 since r12-117-gb972e036f40c
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109392 Martin Liška changed: What|Removed |Added CC||marxin at gcc dot gnu.org, ||rguenth at gcc dot gnu.org Summary|[12/13 Regression] ICE in |[12/13 Regression] ICE in |tree_vec_extract, at|tree_vec_extract, at |tree-vect-generic.cc:177|tree-vect-generic.cc:177 ||since r12-117-gb972e036f40c --- Comment #3 from Martin Liška --- (In reply to Andrew Pinski from comment #1) > Confirmed. > > Most likely caused by r12-117-gb972e036f40c . Yes, started with this revision.
[Bug tree-optimization/109392] [12/13 Regression] ICE in tree_vec_extract, at tree-vect-generic.cc:177
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109392 --- Comment #2 from Andrew Pinski --- here is a better testcase which does not use vfork which is implicit returns_twice: ``` typedef short __attribute__ ((__vector_size__ (64))) V; V v, w; void g(void) __attribute__((returns_twice)); V foo (V a, V b) { g(); b &= v < b; return (V){foo (b, w)[3], (V){}[3]}; } ```
[Bug tree-optimization/109392] [12/13 Regression] ICE in tree_vec_extract, at tree-vect-generic.cc:177
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109392 Andrew Pinski changed: What|Removed |Added Last reconfirmed||2023-04-04 Ever confirmed|0 |1 Status|UNCONFIRMED |NEW --- Comment #1 from Andrew Pinski --- Confirmed. Most likely caused by r12-117-gb972e036f40c . I think the assert happens because the argument t is abnormal SSA_NAME and resimplify/maybe_push_res_to_seq decides it can't do anything on it so returns null.
[Bug tree-optimization/109392] [12/13 Regression] ICE in tree_vec_extract, at tree-vect-generic.cc:177
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109392 Andrew Pinski changed: What|Removed |Added Component|c |tree-optimization Target Milestone|--- |12.3