This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug tree-optimization/37031] New: ICE for h264ref in gather_interchange_stats with -ftree-loop-linear


Current mainline fails to compile h264ref from SPEC CPU2006 with some sets of
options.  It's somewhat intermittent but complaints from valgrind appear to be
consistent.  Here's the failure for -O3 -ftree-loop-linear using cc1 from
within a script; using the same command directly didn't result in the failure:

bug.c: In function ?foo?:
bug.c:13: internal compiler error: vector VEC(lambda_vector,base) index domain
error, in gather_interchange_stats at tree-loop-linear.c:150
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.

valgrind reports:

==13989== Invalid read of size 4
==13989==    at 0x106DBC34: gather_interchange_stats (lambda.h:31)
==13989==    by 0x106DC5B8: linear_transform_loops (tree-loop-linear.c:211)
==13989==    by 0x10432CC8: tree_linear_transform (tree-ssa-loop.c:259)
==13989==    by 0x1029D19C: execute_one_pass (passes.c:1282)
==13989==    by 0x1029D480: execute_pass_list (passes.c:1330)
==13989==    by 0x1029D498: execute_pass_list (passes.c:1331)
==13989==    by 0x1029D498: execute_pass_list (passes.c:1331)
==13989==    by 0x103999D0: tree_rest_of_compilation (tree-optimize.c:418)
==13989==    by 0x10547DBC: cgraph_expand_function (cgraphunit.c:1038)
==13989==    by 0x1054A2D0: cgraph_optimize (cgraphunit.c:1100)
==13989==    by 0x10017584: c_write_global_declarations (c-decl.c:8038)
==13989==    by 0x10338A2C: toplev_main (toplev.c:967)
==13989==  Address 0x76A1BD8 is 0 bytes inside a block of size 20 free'd
==13989==    at 0xFFBAE98: realloc (in
/usr/lib/valgrind/ppc32-linux/vgpreload_memcheck.so)
==13989==    by 0x10720DD8: xrealloc (xmalloc.c:179)
==13989==    by 0x105152DC: vec_heap_o_reserve_1 (vec.c:176)
==13989==    by 0x1069FC98: lambda_compute_access_matrices (lambda.h:32)
==13989==    by 0x106DC458: linear_transform_loops (tree-loop-linear.c:353)
==13989==    by 0x10432CC8: tree_linear_transform (tree-ssa-loop.c:259)
==13989==    by 0x1029D19C: execute_one_pass (passes.c:1282)
==13989==    by 0x1029D480: execute_pass_list (passes.c:1330)
==13989==    by 0x1029D498: execute_pass_list (passes.c:1331)
==13989==    by 0x1029D498: execute_pass_list (passes.c:1331)
==13989==    by 0x103999D0: tree_rest_of_compilation (tree-optimize.c:418)
==13989==    by 0x10547DBC: cgraph_expand_function (cgraphunit.c:1038)

I'll attach the testcase, the valgrind output, and the script I used with delta
to initially cut down the testcase.  I've seen the failure with GCC back to
20080429 but haven't yet tried a reghunt.


-- 
           Summary: ICE for h264ref in gather_interchange_stats with -ftree-
                    loop-linear
           Product: gcc
           Version: 4.4.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: janis at gcc dot gnu dot org
GCC target triplet: powerpc-unknown-linux-gnu


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]