https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84811
Bug ID: 84811 Summary: ICE on valid code at -O3 in 64-bit mode on x86_64-linux-gnu: in smallest_mode_for_size, at stor-layout.c:355 Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: ipa Assignee: unassigned at gcc dot gnu.org Reporter: su at cs dot ucdavis.edu CC: marxin at gcc dot gnu.org Target Milestone: --- $ gcctk -v Using built-in specs. COLLECT_GCC=gcctk COLLECT_LTO_WRAPPER=/home/su/software/tmp/gcc/gcc-trunk/libexec/gcc/x86_64-pc-linux-gnu/8.0.1/lto-wrapper Target: x86_64-pc-linux-gnu Configured with: ../gcc-source-trunk/configure --enable-languages=c,c++,lto --prefix=/home/su/software/tmp/gcc/gcc-trunk --disable-bootstrap Thread model: posix gcc version 8.0.1 20180310 (experimental) [trunk revision 258413] (GCC) $ $ gcctk -O2 -c small.c $ gcc-7.2.0 -O3 -c small.c $ $ gcctk -O3 -c small.c during RTL pass: dse1 small.c: In function ‘fn1’: small.c:12:1: internal compiler error: in smallest_mode_for_size, at stor-layout.c:355 } ^ 0xc95e8b smallest_mode_for_size(poly_int<1u, unsigned long>, mode_class) ../../gcc-source-trunk/gcc/stor-layout.c:355 0x146b92b smallest_int_mode_for_size ../../gcc-source-trunk/gcc/machmode.h:842 0x146b92b find_shift_sequence ../../gcc-source-trunk/gcc/dse.c:1701 0x146b92b get_stored_val ../../gcc-source-trunk/gcc/dse.c:1847 0x146e4b3 record_store ../../gcc-source-trunk/gcc/dse.c:1557 0x146f3be scan_insn ../../gcc-source-trunk/gcc/dse.c:2545 0x146f3be dse_step1 ../../gcc-source-trunk/gcc/dse.c:2657 0x146f3be rest_of_handle_dse ../../gcc-source-trunk/gcc/dse.c:3574 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions. $ ----------------------------------------- int a; long b[1][9]; void fn1 () { while (a) { for (a = 0; a < 9; a++) b[2180000000000000000][a] = 1; break; } }