https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113018
Bug ID: 113018 Summary: ICE in gimple_convert, gimple-fold.cc during the SLP pass Product: gcc Version: 14.0 Status: UNCONFIRMED Keywords: ice-on-valid-code, needs-bisection Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: fkastl at suse dot cz Target Milestone: --- Host: x86_64-linux Target: aarch64-gnu-linux While compiling the GCC testsuite testcase gcc.target/aarch64/vect-fmax-fmin.c with aarch64 crosscompiler: aarch64-linux-gnu-gcc /home/worker/buildworker/tiber-option-juggler/build/gcc/testsuite/gcc.target/aarch64/vect-fmax-fmin.c -fno-tree-loop-vectorize -Ofast An ICE occurs: during GIMPLE pass: slp In file included from /home/worker/buildworker/tiber-option-juggler/build/gcc/testsuite/gcc.target/aarch64/vect-fmax-fmin.c:8: /home/worker/buildworker/tiber-option-juggler/build/gcc/testsuite/gcc.target/aarch64/vect-fmaxv-fminv.x: In function ‘maxv_f32’: /home/worker/buildworker/tiber-option-juggler/build/gcc/testsuite/gcc.target/aarch64/vect-fmaxv-fminv.x:5:7: internal compiler error: Segmentation fault 5 | float maxv_f32 (pRF32 a) | ^~~~~~~~ 0xd938df crash_signal /home/worker/buildworker/tiber-gcc-trunk-aarch64/build/gcc/toplev.cc:316 0xa7e033 gimple_convert(gimple_stmt_iterator*, bool, gsi_iterator_update, unsigned int, tree_node*, tree_node*) /home/worker/buildworker/tiber-gcc-trunk-aarch64/build/gcc/gimple-fold.cc:9168 0x10274cf gimple_convert(gimple**, tree_node*, tree_node*) /home/worker/buildworker/tiber-gcc-trunk-aarch64/build/gcc/gimple-fold.h:183 0x10274cf vectorize_slp_instance_root_stmt(_slp_tree*, _slp_instance*) /home/worker/buildworker/tiber-gcc-trunk-aarch64/build/gcc/tree-vect-slp.cc:9401 0x10287aa vect_schedule_slp(vec_info*, vec<_slp_instance*, va_heap, vl_ptr> const&) /home/worker/buildworker/tiber-gcc-trunk-aarch64/build/gcc/tree-vect-slp.cc:9639 0x102ac51 vect_slp_region /home/worker/buildworker/tiber-gcc-trunk-aarch64/build/gcc/tree-vect-slp.cc:7770 0x102c19c vect_slp_bbs /home/worker/buildworker/tiber-gcc-trunk-aarch64/build/gcc/tree-vect-slp.cc:7870 0x102c688 vect_slp_function(function*) /home/worker/buildworker/tiber-gcc-trunk-aarch64/build/gcc/tree-vect-slp.cc:7992 0x1033f59 execute /home/worker/buildworker/tiber-gcc-trunk-aarch64/build/gcc/tree-vectorizer.cc:1531 Please submit a full bug report, with preprocessed source (by using -freport-bug). Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions. My guess is that the segmentation fault is caused by SLP passing a null tree to gimple_convert.