https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114195
Bug ID: 114195 Summary: [14] RISC-V vector ICE: in vectorizable_store, at tree-vect-stmts.cc:8690 Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: patrick at rivosinc dot com Target Milestone: --- Created attachment 57588 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=57588&action=edit -freport-bug output Testcase: long a, b; extern short c[]; void d() { for (int e = 0; e < 5; e += 2) { a = ({ a < 0 ? a : 0; }); b = ({ b < 0 ? b : 0; }); c[e] = 0; } } Backtrace: > /scratch/tc-testing/tc-feb-20/build-rv64gcv/bin/riscv64-unknown-linux-gnu-gcc > -march=rv64gcv -O3 red.c during GIMPLE pass: vect red.c: In function 'd': red.c:3:6: internal compiler error: in vectorizable_store, at tree-vect-stmts.cc:8690 3 | void d() { | ^ 0xbe592a vectorizable_store ../../../gcc/gcc/tree-vect-stmts.cc:8690 0x274ff35 vect_analyze_stmt(vec_info*, _stmt_vec_info*, bool*, _slp_tree*, _slp_instance*, vec<stmt_info_for_cost, va_heap, vl_ptr>*) ../../../gcc/gcc/tree-vect-stmts.cc:13241 0x15de0e2 vect_analyze_loop_operations ../../../gcc/gcc/tree-vect-loop.cc:2208 0x15de0e2 vect_analyze_loop_2 ../../../gcc/gcc/tree-vect-loop.cc:3041 0x15dfdf0 vect_analyze_loop_1 ../../../gcc/gcc/tree-vect-loop.cc:3481 0x15e0589 vect_analyze_loop(loop*, vec_info_shared*) ../../../gcc/gcc/tree-vect-loop.cc:3639 0x1627ed4 try_vectorize_loop_1 ../../../gcc/gcc/tree-vectorizer.cc:1066 0x1627ed4 try_vectorize_loop ../../../gcc/gcc/tree-vectorizer.cc:1182 0x16287fc execute ../../../gcc/gcc/tree-vectorizer.cc:1298 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. Godbolt: https://godbolt.org/z/s9YbYhK8e Tested/found using r14-9084-g61ab046a327 (not bisected) Found via fuzzer.