[Bug target/94072] New: [10 Regression] ICE: SIGSEGV due to infinite recursion in expand_expr/expand_expr_real_1 with -msve-vector-bits=512

zsojka at seznam dot cz gcc-bugzilla@gcc.gnu.org
Fri Mar 6 14:31:00 GMT 2020


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)


More information about the Gcc-bugs mailing list