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

            Bug ID: 68066
           Summary: [6 Regression]: ICE in max_value, at wide-int.cc
           Product: gcc
           Version: 6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ubizjak at gmail dot com
  Target Milestone: ---
            Target: alpha-linux-gnu

Recent regression, FAILs in the testsuite on alpha-linux-gnu:

FAIL: gcc.dg/fold-compare-7.c (internal compiler error)
FAIL: gcc.dg/fold-compare-7.c (test for excess errors)

This failure can be triggered with a crosscompiler to alpha-linux-gnu:

~/gcc-build-alpha/gcc/cc1 -O2 -fpreprocessed -quiet fold-compare-7.c 
fold-compare-7.c: In function ‘f’:
fold-compare-7.c:8:1: internal compiler error: in max_value, at wide-int.cc:308
 }
 ^
0xe0c6c8 wi::max_value(unsigned int, signop)
        ../../gcc-svn/trunk/gcc/wide-int.cc:308
0xdb537c integer_all_onesp(tree_node const*)
        ../../gcc-svn/trunk/gcc/tree.c:2372
0xdb5452 integer_all_onesp(tree_node const*)
        ../../gcc-svn/trunk/gcc/tree.c:2364
0xeccbd7 generic_simplify_VEC_COND_EXPR
        /home/uros/gcc-build-alpha/gcc/generic-match.c:23341
0x7b4bdb fold_ternary_loc(unsigned int, tree_code, tree_node*, tree_node*,
tree_node*, tree_node*)
        ../../gcc-svn/trunk/gcc/fold-const.c:11351
0xe292cf gimple_resimplify3(gimple**, code_helper*, tree_node*, tree_node**,
tree_node* (*)(tree_node*))
        ../../gcc-svn/trunk/gcc/gimple-match-head.c:222
0xe93abd gimple_simplify(gimple*, code_helper*, tree_node**, gimple**,
tree_node* (*)(tree_node*), tree_node* (*)(tree_node*))
        ../../gcc-svn/trunk/gcc/gimple-match-head.c:718
0x826370 fold_stmt_1
        ../../gcc-svn/trunk/gcc/gimple-fold.c:3605
0x82740d fold_stmt(gimple_stmt_iterator*, tree_node* (*)(tree_node*))
        ../../gcc-svn/trunk/gcc/gimple-fold.c:3816
0xbff600 execute
        ../../gcc-svn/trunk/gcc/tree-ssa-forwprop.c:2326
Please submit a full bug report,


(gdb) bt
#0  internal_error (gmsgid=0x123aab5 "in %s, at %s:%d") at
../../gcc-svn/trunk/gcc/diagnostic.c:1134
#1  0x000000000105dffc in fancy_abort (file=<optimized out>, line=308, 
    function=0x11af765 <wi::max_value(unsigned int, signop)::__FUNCTION__>
"max_value") at ../../gcc-svn/trunk/gcc/diagnostic.c:1209
#2  0x0000000000e0c6c9 in wi::max_value (precision=308, sgn=<optimized out>) at
../../gcc-svn/trunk/gcc/wide-int.cc:308
#3  0x0000000000db537d in integer_all_onesp (expr=0x2aaaae876b40) at
../../gcc-svn/trunk/gcc/tree.c:2372
#4  0x0000000000db5453 in integer_all_onesp (expr=0x2aaaae886c30) at
../../gcc-svn/trunk/gcc/tree.c:2364
#5  0x0000000000eccbd8 in generic_simplify_VEC_COND_EXPR (loc=0, code=18544485,
type=0x2aaaae889738, op0=0x134, op1=0x2aaaae8869b0, 
    op2=0x2aaaae886960) at generic-match.c:23341

(gdb) f 2
#2  0x0000000000e0c6c9 in wi::max_value (precision=308, sgn=<optimized out>) at
../../gcc-svn/trunk/gcc/wide-int.cc:308
308       gcc_checking_assert (precision != 0);
(gdb) up
#3  0x0000000000db537d in integer_all_onesp (expr=0x2aaaae876b40) at
../../gcc-svn/trunk/gcc/tree.c:2372
2372      return wi::max_value (TYPE_PRECISION (TREE_TYPE (expr)), UNSIGNED) ==
expr;

(gdb) p debug_generic_expr (expr)
0
$2 = void
(gdb) p debug_tree (expr)
 <integer_cst 0x2aaaae876b40 type <boolean_type 0x2aaaae889888> constant 0>
$3 = void

Reply via email to