public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
* [Bug c/100844] New: ICE with -O2: Segmentation fault signal terminated program cc1 @ 2021-06-01 4:28 cnsun at uwaterloo dot ca 2021-06-01 6:54 ` [Bug tree-optimization/100844] " rguenth at gcc dot gnu.org 2021-06-01 7:03 ` rguenth at gcc dot gnu.org 0 siblings, 2 replies; 3+ messages in thread From: cnsun at uwaterloo dot ca @ 2021-06-01 4:28 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100844 Bug ID: 100844 Summary: ICE with -O2: Segmentation fault signal terminated program cc1 Product: gcc Version: tree-ssa Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: cnsun at uwaterloo dot ca Target Milestone: --- (Sorry about this lengthy bug report. I could not reduce it further.) $ gcc-trunk -v Using built-in specs. COLLECT_GCC=gcc-trunk COLLECT_LTO_WRAPPER=/scratch/software/gcc-trunk/libexec/gcc/x86_64-pc-linux-gnu/12.0.0/lto-wrapper Target: x86_64-pc-linux-gnu Configured with: /tmp/tmp.4wFFqTQrHF-gcc-builder/gcc/configure --enable-languages=c,c++,lto --enable-checking-yes --enable-multiarch --prefix=/scratch/software/gcc-trunk --disable-bootstrap Thread model: posix Supported LTO compression algorithms: zlib gcc version 12.0.0 20210601 (experimental) [master revision :54832e2f6:28daadc98094501175c9dfe4a985871fa6aa4f94] (GCC) $ cat mutant.c int foo (char *p, unsigned n) { while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n--) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n) while (n--) while (n--) while (n) while (n) while (n) while (n) while (n--) while (n--) while (n) while (n--) while (n) while (n) while (n) while (n) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) while (n--) p[n] = 'A'; } $ gcc-trunk -O2 mutant.c gcc-trunk: internal compiler error: Segmentation fault signal terminated program cc1 Please submit a full bug report, with preprocessed source if appropriate. See <https://gcc.gnu.org/bugs/> for instructions. ^ permalink raw reply [flat|nested] 3+ messages in thread
* [Bug tree-optimization/100844] ICE with -O2: Segmentation fault signal terminated program cc1 2021-06-01 4:28 [Bug c/100844] New: ICE with -O2: Segmentation fault signal terminated program cc1 cnsun at uwaterloo dot ca @ 2021-06-01 6:54 ` rguenth at gcc dot gnu.org 2021-06-01 7:03 ` rguenth at gcc dot gnu.org 1 sibling, 0 replies; 3+ messages in thread From: rguenth at gcc dot gnu.org @ 2021-06-01 6:54 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100844 Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever confirmed|0 |1 Last reconfirmed| |2021-06-01 Keywords| |compile-time-hog CC| |hubicka at gcc dot gnu.org, | |rguenth at gcc dot gnu.org --- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- Btw, repetitive lines can be abbreviated using macros like #define WONE while (n--) #define WTEN WONE WONE WONE WONE WONE WONE WONE WONE WONE WONE #define WHUNDRED WTEN WTEN WTEN WTEN WTEN WTEN WTEN WTEN WTEN WTEN WHUNDRED WHUNDRED WTEN WTEN for two hundred twenty repetitions of while (n--). Your testcase doesn't reproduce the ICE for me. I'm quite sure you're running into a stack overflow due to some recursive (in loop depth) algorithm in GCC. Lowering the stack ulimit from 8MB to 2MB makes it run into #0 0x00000000012005f9 in expr_expected_value_1 ( type=<error reading variable: Cannot access memory at address 0x7fffffdfefb8>, op0=<error reading variable: Cannot access memory at address 0x7fffffdfefb0>, code=<error reading variable: Cannot access memory at address 0x7fffffdfefac>, op1=<error reading variable: Cannot access memory at address 0x7fffffdfefa0>, visited=<error reading variable: Cannot access memory at address 0x7fffffdfef98>, predictor=<error reading variable: Cannot access memory at address 0x7fffffdfef90>, probability=0x7fffffdff310) at /home/rguenther/src/gcc4/gcc/predict.c:2362 #1 0x0000000001200a40 in expr_expected_value_1 ( type=<integer_type 0x7ffff6583690 unsigned int>, op0=<ssa_name 0x7ffff61cf798 6222>, code=SSA_NAME, op1=<tree 0x0>, visited=0x7fffffffd910, predictor=0x7fffffdff318, probability=0x7fffffdff310) at /home/rguenther/src/gcc4/gcc/predict.c:2451 ... #8828 0x00000000012008dd in expr_expected_value_1 (type=<integer_type 0x7ffff6583690 unsigned int>, op0=<ssa_name 0x7ffff65755e8 1973>, code=SSA_NAME, op1=<tree 0x0>, visited=0x7fffffffd910, predictor=0x7fffffffd8bc, probability=0x7fffffffd8b0) at /home/rguenther/src/gcc4/gcc/predict.c:2423 #8829 0x00000000012013af in expr_expected_value (expr=<ssa_name 0x7ffff65755e8 1973>, visited=0x7fffffffd910, predictor=0x7fffffffd8bc, probability=0x7fffffffd8b0) at /home/rguenther/src/gcc4/gcc/predict.c:2641 #8830 0x0000000001201085 in expr_expected_value_1 (type=<boolean_type 0x7ffff6583b28 _Bool>, op0=<ssa_name 0x7ffff65755e8 1973>, code=NE_EXPR, op1=<integer_cst 0x7ffff656af60>, visited=0x7fffffffd910, predictor=0x7fffffffd8bc, probability=0x7fffffffd8b0) at /home/rguenther/src/gcc4/gcc/predict.c:2575 #8831 0x00000000012016d0 in tree_predict_by_opcode (bb=<basic_block 0x7ffff627f068 (4)>) at /home/rguenther/src/gcc4/gcc/predict.c:2709 #8832 0x0000000001202aa1 in tree_estimate_probability_bb (bb=<basic_block 0x7ffff627f068 (4)>, local_only=false) at /home/rguenther/src/gcc4/gcc/predict.c:3096 #8833 0x0000000001202b65 in tree_estimate_probability (dry_run=false) at /home/rguenther/src/gcc4/gcc/predict.c:3126 #8834 0x0000000001206094 in (anonymous namespace)::pass_profile::execute (this=0x3793f30, fun=0x7ffff66c6000) at /home/rguenther/src/gcc4/gcc/predict.c:4102 #8835 0x00000000011e8147 in execute_one_pass (pass=<opt_pass* 0x3793f30 "profile_estimate"(53)>) at /home/rguenther/src/gcc4/gcc/passes.c:2567 so it's not really loop depth but a large dependent expression. The unlimited expr walk is also a possible compile-time issue - for binary ops it brances off to both arms even. The whole thing is a bit odd, probably wanting to only sparsely evaluate "expected values" but ending of evaluating things more than once if exprs are reached by multiple "last stmts". A forward sweep over the IL would lose sparseness but would remove the recursion and make the whole thing predictiable. Alternatively using a worklist and a SSA def "likely value" cache for all expr evaluations might preserve the sparseness but at bigger constant cost. Btw, I've never seen this function on the radar for "real" code. ^ permalink raw reply [flat|nested] 3+ messages in thread
* [Bug tree-optimization/100844] ICE with -O2: Segmentation fault signal terminated program cc1 2021-06-01 4:28 [Bug c/100844] New: ICE with -O2: Segmentation fault signal terminated program cc1 cnsun at uwaterloo dot ca 2021-06-01 6:54 ` [Bug tree-optimization/100844] " rguenth at gcc dot gnu.org @ 2021-06-01 7:03 ` rguenth at gcc dot gnu.org 1 sibling, 0 replies; 3+ messages in thread From: rguenth at gcc dot gnu.org @ 2021-06-01 7:03 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100844 --- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> --- Oh, and at -O0 garbage collection recursion overflows the stack following SSA_NAME_DEF_STMT. We can almost make that GTY((skip(""))) but for the fact that we have GIMPLE_NOP for default-defs and those are not in the IL ... (OTOH it presents the opportunity to have a single global GIMPLE_NOP as GTY root since GIMPLE_NOP does not have a SSA def). Or simply have NULL as SSA def of default defs. Btw, we're entering the SSA def chain via REG_DECL, we might want to consider NULLing all SSA_NAME_DEF_STMT after expanding to RTL as well. ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2021-06-01 7:03 UTC | newest] Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2021-06-01 4:28 [Bug c/100844] New: ICE with -O2: Segmentation fault signal terminated program cc1 cnsun at uwaterloo dot ca 2021-06-01 6:54 ` [Bug tree-optimization/100844] " rguenth at gcc dot gnu.org 2021-06-01 7:03 ` rguenth at gcc dot gnu.org
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).