https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107554
Bug ID: 107554
Summary: Segmentation fault during GIMPLE pass: strlen
(tree-ssa-strlen.cc:4772)
Product: gcc
Version: 13.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: nik_1357 at mail dot ru
Target Milestone: ---
Hello.
Test which causes the bug:
#include <string.h>
#define ELEMS 0x40000000
int a[ELEMS];
int b[ELEMS];
int main() {
memcpy(a, b, ELEMS*sizeof(int));
}
Command:
gcc -O1 -foptimize-strlen test.c -c
Error message:
during GIMPLE pass: strlen
memcpy_segfault.c: In function ‘main’:
memcpy_segfault.c:8:5: internal compiler error: Segmentation fault
8 | int main()
| ^~~~
0xb2636f crash_signal
../../../gcc/gcc-10.4.0/gcc/toplev.c:328
0x7f3f359e351f ???
./signal/../sysdeps/unix/sysv/linux/x86_64/libc_sigaction.c:0
0xcaaaed count_nonzero_bytes
../../../gcc/gcc-10.4.0/gcc/tree-ssa-strlen.c:4820
0xcad456 count_nonzero_bytes
../../../gcc/gcc-10.4.0/gcc/tree-ssa-strlen.c:4963
0xcad456 handle_store
../../../gcc/gcc-10.4.0/gcc/tree-ssa-strlen.c:5040
0xcad456 check_and_optimize_stmt
../../../gcc/gcc-10.4.0/gcc/tree-ssa-strlen.c:5687
0xcad456 strlen_dom_walker::before_dom_children(basic_block_def*)
../../../gcc/gcc-10.4.0/gcc/tree-ssa-strlen.c:5864
0x12d45d7 dom_walker::walk(basic_block_def*)
../../../gcc/gcc-10.4.0/gcc/domwalk.c:309
0xca404e printf_strlen_execute
../../../gcc/gcc-10.4.0/gcc/tree-ssa-strlen.c:5930
Bug is present in:
10, 11, 12 and current master.
9 is not affected by it.