https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94072
Bug ID: 94072 Summary: [10 Regression] ICE: SIGSEGV due to infinite recursion in expand_expr/expand_expr_real_1 with -msve-vector-bits=512 Product: gcc Version: 10.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: zsojka at seznam dot cz Target Milestone: --- Host: x86_64-pc-linux-gnu Target: aarch64-unknown-linux-gnu Created attachment 47991 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=47991&action=edit reduced testcase Compiler output: $ aarch64-unknown-linux-gnu-gcc -msve-vector-bits=512 testcase.c aarch64-unknown-linux-gnu-gcc: 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. (gdb) bt #0 0x0000000000d4420a in native_interpret_vector_part (type=0x7ffff7507498, bytes=0x7ffffbfff420 "", len=8, npatterns=1, nelts_per_pattern=1) at /repo/gcc-trunk/gcc/tree.h:3402 #1 0x0000000000d5e2b5 in fold_view_convert_vector_encoding (expr=0x7ffff72efc60, type=0x7ffff7507498) at /repo/gcc-trunk/gcc/vec.h:1432 #2 fold_view_convert_expr (expr=0x7ffff72efc60, type=0x7ffff7507498) at /repo/gcc-trunk/gcc/fold-const.c:8497 #3 const_unop (code=<optimized out>, type=0x7ffff7507498, arg0=0x7ffff72efc60) at /repo/gcc-trunk/gcc/fold-const.c:1757 #4 0x0000000000d54391 in fold_unary_loc (loc=loc@entry=0, code=code@entry=VIEW_CONVERT_EXPR, type=0x7ffff7507498, op0=op0@entry=0x7ffff72efc60) at /repo/gcc-trunk/gcc/fold-const.c:8597 #5 0x0000000000d0ed01 in expand_expr_real_1 (exp=0x7ffff72efc60, target=<optimized out>, tmode=E_XImode, modifier=EXPAND_NORMAL, alt_rtl=0x0, inner_reference_p=<optimized out>) at /repo/gcc-trunk/gcc/expr.c:10244 #6 0x0000000000d0b2e6 in expand_expr (modifier=EXPAND_NORMAL, mode=E_XImode, target=0x7ffff754ab70, exp=<optimized out>) at /repo/gcc-trunk/gcc/expr.h:282 #7 expand_expr_real_1 (exp=<optimized out>, target=<optimized out>, tmode=E_XImode, modifier=EXPAND_NORMAL, alt_rtl=0x0, inner_reference_p=<optimized out>) at /repo/gcc-trunk/gcc/expr.c:10440 #8 0x0000000000d0b2e6 in expand_expr (modifier=EXPAND_NORMAL, mode=E_XImode, target=0x7ffff754ab70, exp=<optimized out>) at /repo/gcc-trunk/gcc/expr.h:282 #9 expand_expr_real_1 (exp=<optimized out>, target=<optimized out>, tmode=E_XImode, modifier=EXPAND_NORMAL, alt_rtl=0x0, inner_reference_p=<optimized out>) at /repo/gcc-trunk/gcc/expr.c:10440 #10 0x0000000000d0b2e6 in expand_expr (modifier=EXPAND_NORMAL, mode=E_XImode, target=0x7ffff754ab70, exp=<optimized out>) at /repo/gcc-trunk/gcc/expr.h:282 #11 expand_expr_real_1 (exp=<optimized out>, target=<optimized out>, tmode=E_XImode, modifier=EXPAND_NORMAL, alt_rtl=0x0, inner_reference_p=<optimized out>) at /repo/gcc-trunk/gcc/expr.c:10440 ... $ aarch64-unknown-linux-gnu-gcc -v Using built-in specs. COLLECT_GCC=/repo/gcc-trunk/binary-latest-aarch64/bin/aarch64-unknown-linux-gnu-gcc COLLECT_LTO_WRAPPER=/repo/gcc-trunk/binary-trunk-r10-7065-20200306122437-g4cdcb2c92a1-checking-yes-rtl-df-extra-aarch64/bin/../libexec/gcc/aarch64-unknown-linux-gnu/10.0.1/lto-wrapper Target: aarch64-unknown-linux-gnu Configured with: /repo/gcc-trunk//configure --enable-languages=c,c++ --enable-valgrind-annotations --disable-nls --enable-checking=yes,rtl,df,extra --with-cloog --with-ppl --with-isl --with-sysroot=/usr/aarch64-unknown-linux-gnu --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --target=aarch64-unknown-linux-gnu --with-ld=/usr/bin/aarch64-unknown-linux-gnu-ld --with-as=/usr/bin/aarch64-unknown-linux-gnu-as --disable-libstdcxx-pch --prefix=/repo/gcc-trunk//binary-trunk-r10-7065-20200306122437-g4cdcb2c92a1-checking-yes-rtl-df-extra-aarch64 Thread model: posix Supported LTO compression algorithms: zlib zstd gcc version 10.0.1 20200306 (experimental) (GCC)