> gcc -v
Using built-in specs.
COLLECT_GCC=/usr/local/gcc45/bin/gcc
COLLECT_LTO_WRAPPER=/usr/local/gcc45/libexec/gcc/x86_64-apple-darwin10.2.0/4.5.0/lto-wrapper
Target: x86_64-apple-darwin10.2.0
Configured with: ../gcc/configure --prefix=/usr/local/gcc45
--enable-threads=posix --with-arch=core2 --with-tune=core2 --with-gmp=/sw
--with-mpfr=/sw --with-ppl=/sw --with-cloog=/sw --with-libelf=/sw --disable-nls
--disable-bootstrap LDFLAGS=/usr/lib/libiconv.dylib
--enable-languages=c,c++,lto,objc,obj-c++
Thread model: posix
gcc version 4.5.0 20091129 (experimental) (GCC) 

Using r154734.

With attached source:
> gcc -O3 -floop-interchange -S graphite_crash.i
graphite_crash.i: In function 'border_mirror_480':
graphite_crash.i:17:6: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.

It doesn't happen reliably to me with -v -Q, so I can't check with gdb.
Valgrind gives:
==12758== Invalid read of size 8
==12758==    at 0x1004AE4A3: lst_do_interchange_1 (graphite-interchange.c:709)
==12758==    by 0x1004AE525: lst_do_interchange (graphite-interchange.c:730)
==12758==    by 0x1004AE58A: lst_do_interchange (graphite-interchange.c:734)
==12758==    by 0x1004AE5CA: scop_do_interchange (graphite-interchange.c:748)
==12758==    by 0x1004AF4C7: apply_poly_transforms (graphite-poly.c:260)
==12758==    by 0x1004A01A1: graphite_transform_loops (graphite.c:276)
==12758==    by 0x100736B09: graphite_transforms (tree-ssa-loop.c:300)
==12758==    by 0x10057D522: execute_one_pass (passes.c:1522)
==12758==    by 0x10057D7CC: execute_pass_list (passes.c:1577)
==12758==    by 0x10057D7DE: execute_pass_list (passes.c:1578)
==12758==    by 0x10057D7DE: execute_pass_list (passes.c:1578)
==12758==    by 0x1006AAA80: tree_rest_of_compilation (tree-optimize.c:408)
==12758==  Address 0x141c25210 is 16 bytes inside a block of size 24 free'd
==12758==    at 0x140EB88DC: free (vg_replace_malloc.c:325)
==12758==    by 0x1004AE00C: lst_try_interchange (graphite-poly.h:704)
==12758==    by 0x1004AE49F: lst_do_interchange_1 (graphite-interchange.c:710)
==12758==    by 0x1004AE525: lst_do_interchange (graphite-interchange.c:730)
==12758==    by 0x1004AE58A: lst_do_interchange (graphite-interchange.c:734)
==12758==    by 0x1004AE5CA: scop_do_interchange (graphite-interchange.c:748)
==12758==    by 0x1004AF4C7: apply_poly_transforms (graphite-poly.c:260)
==12758==    by 0x1004A01A1: graphite_transform_loops (graphite.c:276)
==12758==    by 0x100736B09: graphite_transforms (tree-ssa-loop.c:300)
==12758==    by 0x10057D522: execute_one_pass (passes.c:1522)
==12758==    by 0x10057D7CC: execute_pass_list (passes.c:1577)
==12758==    by 0x10057D7DE: execute_pass_list (passes.c:1578)
==12758== 
==12758== Invalid read of size 8
==12758==    at 0x1004AE534: lst_do_interchange (graphite-interchange.c:732)
==12758==    by 0x1004AE58A: lst_do_interchange (graphite-interchange.c:734)
==12758==    by 0x1004AE5CA: scop_do_interchange (graphite-interchange.c:748)
==12758==    by 0x1004AF4C7: apply_poly_transforms (graphite-poly.c:260)
==12758==    by 0x1004A01A1: graphite_transform_loops (graphite.c:276)
==12758==    by 0x100736B09: graphite_transforms (tree-ssa-loop.c:300)
==12758==    by 0x10057D522: execute_one_pass (passes.c:1522)
==12758==    by 0x10057D7CC: execute_pass_list (passes.c:1577)
==12758==    by 0x10057D7DE: execute_pass_list (passes.c:1578)
==12758==    by 0x10057D7DE: execute_pass_list (passes.c:1578)
==12758==    by 0x1006AAA80: tree_rest_of_compilation (tree-optimize.c:408)
==12758==    by 0x100866F56: cgraph_expand_function (cgraphunit.c:1178)
==12758==  Address 0x141c25210 is 16 bytes inside a block of size 24 free'd
==12758==    at 0x140EB88DC: free (vg_replace_malloc.c:325)
==12758==    by 0x1004AE00C: lst_try_interchange (graphite-poly.h:704)
==12758==    by 0x1004AE49F: lst_do_interchange_1 (graphite-interchange.c:710)
==12758==    by 0x1004AE525: lst_do_interchange (graphite-interchange.c:730)
==12758==    by 0x1004AE58A: lst_do_interchange (graphite-interchange.c:734)
==12758==    by 0x1004AE5CA: scop_do_interchange (graphite-interchange.c:748)
==12758==    by 0x1004AF4C7: apply_poly_transforms (graphite-poly.c:260)
==12758==    by 0x1004A01A1: graphite_transform_loops (graphite.c:276)
==12758==    by 0x100736B09: graphite_transforms (tree-ssa-loop.c:300)
==12758==    by 0x10057D522: execute_one_pass (passes.c:1522)
==12758==    by 0x10057D7CC: execute_pass_list (passes.c:1577)
==12758==    by 0x10057D7DE: execute_pass_list (passes.c:1578)


-- 
           Summary: Segmentation fault with graphite -floop-interchange
           Product: gcc
           Version: 4.5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: astrange at ithinksw dot com
 GCC build triplet: x86_64-apple-darwin10.2.0
  GCC host triplet: x86_64-apple-darwin10.2.0
GCC target triplet: x86_64-apple-darwin10.2.0


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

Reply via email to