https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113199
Bug ID: 113199 Summary: [14 Regression][GCN] ICE (segfault) when compiling Newlib Product: gcc Version: 14.0 Status: UNCONFIRMED Keywords: ice-on-invalid-code Severity: normal Priority: P3 Component: middle-end Assignee: unassigned at gcc dot gnu.org Reporter: burnus at gcc dot gnu.org CC: ams at gcc dot gnu.org, tnfchris at gcc dot gnu.org Target Milestone: --- Created attachment 56974 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=56974&action=edit Reduced testcase This is with mainline - with the patch for PR113163 applied, i.e. https://gcc.gnu.org/pipermail/gcc-patches/2023-December/641555.html Compiling Newlib's libc/time/wcsftime.c fails as follows. Here for the reduced testcase, compiling it with: gcc -O2 input7.i during GIMPLE pass: vect input7.i: In function '__strftime': input7.i:14:1: internal compiler error: Segmentation fault 14 | __strftime (wchar_t *s, size_t maxsize, const wchar_t *format, | ^~~~~~~~~~ 0x11dcbff crash_signal src/gcc-mainline/gcc/toplev.cc:316 0x7f0481ea008f ??? /build/glibc-wuryBv/glibc-2.31/signal/../sysdeps/unix/sysv/linux/x86_64/sigaction.c:0 0x1222566 contains_struct_check(tree_node*, tree_node_structure_enum, char const*, int, char const*) src/gcc-mainline/gcc/tree.h:3757 0x1222566 verify_gimple_assign_ternary src/gcc-mainline/gcc/tree-cfg.cc:4334 0x1227c8e verify_gimple_in_cfg(function*, bool, bool) src/gcc-mainline/gcc/tree-cfg.cc:5602 0x10cde64 execute_function_todo src/gcc-mainline/gcc/passes.cc:2088 0x10ce3ab execute_todo src/gcc-mainline/gcc/passes.cc:2142 * * * verify_gimple_assign_ternary (stmt=0x7ffff7bdb060) at /net/build5-fossa-cs/scratch/tburnus/fsf.mainline.x86_64-linux-gnu-amdgcn/src/gcc-mainline/gcc/tree-cfg.cc:4334 4334 tree rhs3_type = TREE_TYPE (rhs3); (gdb) p rhs3 $1 = (tree) 0x0 (gdb) up #1 0x0000000001227c8f in verify_gimple_in_cfg (fn=0x7ffff7ba4228, verify_nothrow=verify_nothrow@entry=true, ice=ice@entry=true) at /net/build5-fossa-cs/scratch/tburnus/fsf.mainline.x86_64-linux-gnu-amdgcn/src/gcc-mainline/gcc/tree-cfg.cc:5602 5602 err2 |= verify_gimple_stmt (stmt); (gdb) p stmt $2 = (gimple *) 0x7ffff7bdb060 (gdb) p debug_gimple_stmt(stmt) loop_mask_46 = VEC_PERM_EXPR <loop_mask_69, loop_mask_69, >;