https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91178

Serge Belyshev <belyshev at depni dot sinp.msu.ru> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2019-07-16
                 CC|                            |belyshev at depni dot 
sinp.msu.ru
            Summary|GCC fails with internal     |[9/10 Regression] Infinite
                   |compiler error.             |recursion in
                   |                            |split_constant_offset in
                   |                            |slp after r260289
     Ever confirmed|0                           |1

--- Comment #1 from Serge Belyshev <belyshev at depni dot sinp.msu.ru> ---
git bisect points at r260289, which is "[PATCH] Merge SLP and non-SLP
vectorization costing":
https://gcc.gnu.org/ml/gcc-patches/2018-05/msg00599.html

stack trace shows infinite recursion in split_constant_offset():

(gdb) run -quiet -O3 ~/src/bugs/bug91178.c
...
Program received signal SIGSEGV, Segmentation fault.
...
(gdb) bt -100
...
#190637 0x00000000017333b6 in split_constant_offset (exp=<ssa_name
0x7ffff3cd1c18>, var=var@entry=0x7fffffffe028, off=off@entry=0x7fffffffe018,
cache=...) at ../../gcc/gcc/tree-data-ref.c:815
#190638 0x000000000173251f in split_constant_offset_1
(type=type@entry=<pointer_type 0x7ffff76c93f0>, op0=<optimized out>,
code=code@entry=POINTER_PLUS_EXPR, op1=<integer_cst 0x7ffff7579d38>,
var=var@entry=0x7fffffffe278, off=off@entry=0x7fffffffe270, cache=...) at
../../gcc/gcc/tree-data-ref.c:618
#190639 0x0000000001732c6f in split_constant_offset_1
(type=type@entry=<pointer_type 0x7ffff76c93f0>, op0=<optimized out>,
code=<optimized out>, op1=<optimized out>, var=var@entry=0x7fffffffe278,
off=off@entry=0x7fffffffe270, cache=...) at ../../gcc/gcc/tree-data-ref.c:725
#190640 0x00000000017333b6 in split_constant_offset (exp=exp@entry=<ssa_name
0x7ffff3cd1ca8>, var=var@entry=0x7fffffffe3b0, off=off@entry=0x7fffffffe388,
cache=...) at ../../gcc/gcc/tree-data-ref.c:815
#190641 0x0000000001733441 in split_constant_offset (exp=<ssa_name
0x7ffff3cd1ca8>, var=var@entry=0x7fffffffe3b0, off=off@entry=0x7fffffffe388) at
../../gcc/gcc/tree-data-ref.c:828
#190642 0x0000000001733a1c in dr_analyze_innermost (drb=drb@entry=0x353ad10,
ref=ref@entry=<mem_ref 0x7ffff4326cf8>, loop=loop@entry=0x0,
stmt=stmt@entry=0x7ffff3cd3960) at ../../gcc/gcc/tree-data-ref.c:967
#190643 0x000000000173517f in create_data_ref (nest=<edge 0x0>,
loop=loop@entry=0x7ffff76d1000, memref=memref@entry=<mem_ref 0x7ffff4326cf8>,
stmt=stmt@entry=<gimple_assign 0x7ffff3cd3960>, is_read=is_read@entry=true,
is_conditional_in_stmt=is_conditional_in_stmt@entry=false) at
../../gcc/gcc/tree-data-ref.c:1239
#190644 0x0000000001735598 in find_data_references_in_stmt
(nest=nest@entry=0x0, stmt=stmt@entry=<gimple_assign 0x7ffff3cd3960>,
datarefs=datarefs@entry=Python Exception <class 'gdb.error'> There is no member
or method named m_vecpfx.: 
0x7fffffffe5a0) at ../../gcc/gcc/tree-ssa-loop.h:80
#190645 0x000000000174de04 in vect_find_stmt_data_reference
(loop=loop@entry=0x0, stmt=stmt@entry=<gimple_assign 0x7ffff3cd3960>,
datarefs=datarefs@entry=Python Exception <class 'gdb.error'> There is no member
or method named m_vecpfx.: 
0x7fffffffe658) at ../../gcc/gcc/tree-vect-data-refs.c:4027
#190646 0x0000000000f582ac in vect_slp_bb (bb=bb@entry=<basic_block
0x7ffff75846e8 (4)>) at ../../gcc/gcc/tree-vect-slp.c:3036
#190647 0x0000000000f5b866 in (anonymous
namespace)::pass_slp_vectorize::execute (this=<optimized out>,
fun=0x7ffff76ca000) at ../../gcc/gcc/tree-vectorizer.c:1310
#190648 0x0000000000b615fe in execute_one_pass (pass=pass@entry=<opt_pass*
0x2350cf0 "slp"(167)>) at ../../gcc/gcc/passes.c:2474
...

Reply via email to