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, >;

Reply via email to