[Bug middle-end/26996] New: interpret_rhs_modify_expr calls fold_convert (vector_type, -1)

rguenth at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Mon Apr 3 07:49:00 GMT 2006


We ICE on the air Polyhedron test with -march=pentium4 -ffast-math
-funroll-loops -O3 -ftree-vectorize:
/space/rguenther/tramp3d/pb05/lin/source/air.f90: In function ‘bound’:
/space/rguenther/tramp3d/pb05/lin/source/air.f90:1119: internal compiler error:
in fold_convert, at fold-const.c:2089

#1  0x082ab8ca in fold_convert (type=0xb797d730, arg=0xb7cae7e0)
    at /space/rguenther/src/svn/gcc/gcc/fold-const.c:2089
2089          gcc_assert (tree_int_cst_equal (TYPE_SIZE (type), TYPE_SIZE
(orig)));
(gdb) call debug_tree(arg)
 <integer_cst 0xb7cae7e0 type <integer_type 0xb7cbd284 int4> constant invariant
-1>
(gdb) call debug_tree(type)
 <vector_type 0xb797d730
    type <real_type 0xb7cbd9b4 real8 DF
        size <integer_cst 0xb7cae510 constant invariant 64>
        unit size <integer_cst 0xb7cae528 constant invariant 8>
        align 64 symtab 0 alias set 4 precision 64
        pointer_to_this <pointer_type 0xb7cbdac8>>
    V2DF
    size <integer_cst 0xb7cae648 type <integer_type 0xb7cbd05c bit_size_type>
constant invariant 128>
    unit size <integer_cst 0xb7cae660 type <integer_type 0xb7cbd000> constant
invariant 16>
    align 128 symtab 0 alias set -1 nunits 2>
(gdb) up
#2  0x085ec360 in interpret_rhs_modify_expr (loop=0x8a4e110, 
    at_stmt=0xb7983798, opnd1=0xb797eb20, type=0xb797d730)
    at /space/rguenther/src/svn/gcc/gcc/tree-scalar-evolution.c:1659
1658          /* TYPE may be integer, real or complex, so use fold_convert.  */
1659          res = chrec_fold_multiply (type, chrec10,
1660                                     fold_convert (type,
integer_minus_one_node));

But we can only build a zero vector in fold_convert.


-- 
           Summary: interpret_rhs_modify_expr calls fold_convert
                    (vector_type, -1)
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: middle-end
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: rguenth at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26996



More information about the Gcc-bugs mailing list