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

            Bug ID: 64199
           Summary: [4.8/4.9/5 Regression] ICE: tree check: expected class
                    'constant', have 'binary' (plus_expr) in
                    fold_binary_loc, at fold-const.c:10404 with
                    -ffast-math -frounding-math
           Product: gcc
           Version: 5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: zsojka at seznam dot cz

Created attachment 34201
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=34201&action=edit
reduced testcase

Compiler output:
$ gcc -O -ffast-math -frounding-math testcase.c
testcase.c: In function 'foo':
testcase.c:20:1: internal compiler error: tree check: expected class
'constant', have 'binary' (plus_expr) in fold_binary_loc, at fold-const.c:10404
 }
 ^
0xe94097 tree_class_check_failed(tree_node const*, tree_code_class, char
const*, int, char const*)
        /mnt/svn/gcc-trunk/gcc/tree.c:9277
0x9152d6 tree_class_check(tree_node*, tree_code_class, char const*, int, char
const*)
        /mnt/svn/gcc-trunk/gcc/tree.h:2887
0x9152d6 fold_binary_loc(unsigned int, tree_code, tree_node*, tree_node*,
tree_node*)
        /mnt/svn/gcc-trunk/gcc/fold-const.c:10404
0x91f16a fold_build2_stat_loc(unsigned int, tree_code, tree_node*, tree_node*,
tree_node*)
        /mnt/svn/gcc-trunk/gcc/fold-const.c:14290
0x90c652 fold_binary_loc(unsigned int, tree_code, tree_node*, tree_node*,
tree_node*)
        /mnt/svn/gcc-trunk/gcc/fold-const.c:9881
0xdd50c1 simplify_binary_expression
        /mnt/svn/gcc-trunk/gcc/tree-ssa-sccvn.c:3368
0xdd50c1 try_to_simplify
        /mnt/svn/gcc-trunk/gcc/tree-ssa-sccvn.c:3487
0xdd50c1 visit_use
        /mnt/svn/gcc-trunk/gcc/tree-ssa-sccvn.c:3541
0xdd7911 process_scc
        /mnt/svn/gcc-trunk/gcc/tree-ssa-sccvn.c:3902
0xdd7911 extract_and_process_scc_for_name
        /mnt/svn/gcc-trunk/gcc/tree-ssa-sccvn.c:3988
0xdd7911 DFS
        /mnt/svn/gcc-trunk/gcc/tree-ssa-sccvn.c:4040
0xdd88ce run_scc_vn(vn_lookup_kind)
        /mnt/svn/gcc-trunk/gcc/tree-ssa-sccvn.c:4425
0xdae1d2 execute
        /mnt/svn/gcc-trunk/gcc/tree-ssa-pre.c:4904
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.

$ gcc -v                                       
Using built-in specs.
COLLECT_GCC=/mnt/svn/gcc-trunk/binary-latest/bin/gcc
COLLECT_LTO_WRAPPER=/mnt/svn/gcc-trunk/binary-218413-lto-fortran-checking-yes-rtl-df/libexec/gcc/x86_64-unknown-linux-gnu/5.0.0/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: /mnt/svn/gcc-trunk//configure --enable-checking=yes,rtl,df
--enable-languages=c,c++,lto,fortran
--prefix=/mnt/svn/gcc-trunk/binary-218413-lto-fortran-checking-yes-rtl-df/
--without-cloog --without-ppl
Thread model: posix
gcc version 5.0.0 20141205 (experimental) (GCC) 


Tested revisions:
r218413 - ICE
4_9 r218177 - ICE
4_8 r218176 - ICE
4_7 r211571 - OK
4_6 r197894 - OK

Reply via email to