https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105226
Bug ID: 105226 Summary: [10/11/12 Regression] ICE in gimple_split_edge, at tree-cfg.cc:2960 Product: gcc Version: 12.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: gs...@t-online.de Target Milestone: --- Changed between 20190609 and 20190616, at -O3 or -Ofast : $ cat z1.c #include <setjmp.h> struct longjmp_buf { jmp_buf buf; }; void g (); void f () { int i, n; long *a; long *args; struct longjmp_buf b; setjmp (b.buf); for (;;) { for (i = 0; i < n; i++) a[i] = args[i]; g (); } } $ gcc-10-20190609 -c z1.c -Ofast $ gcc-12-20220410 -c z1.c -O2 $ $ gcc-12-20220410 -c z1.c -Ofast during GIMPLE pass: vect z1.c: In function 'f': z1.c:6:6: internal compiler error: in gimple_split_edge, at tree-cfg.cc:2960 6 | void f () | ^ 0xe53d86 gimple_split_edge ../../gcc/tree-cfg.cc:2960 0x89f16c split_edge(edge_def*) ../../gcc/cfghooks.cc:668 0x10eec7c vect_loop_versioning(_loop_vec_info*, gimple*) ../../gcc/tree-vect-loop-manip.cc:3636 0x10e4e01 vect_transform_loop(_loop_vec_info*, gimple*) ../../gcc/tree-vect-loop.cc:9691 0x111ec35 vect_transform_loops ../../gcc/tree-vectorizer.cc:1007 0x111f2e6 try_vectorize_loop_1 ../../gcc/tree-vectorizer.cc:1136 0x111f2e6 try_vectorize_loop ../../gcc/tree-vectorizer.cc:1167 0x111f914 execute ../../gcc/tree-vectorizer.cc:1281