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/49343] New: [4.7 regression] ICE on field with variable offset


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

           Summary: [4.7 regression] ICE on field with variable offset
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: tree-optimization
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: ebotcazou@gcc.gnu.org


This is a problem recently exposed on the mainline.  SRA (early variant)
decides to scalarize a record containing a field with variable offset and
aborts:

+===========================GNAT BUG DETECTED==============================+
| 4.7.0 20110608 (experimental) [trunk revision 174799] (i586-suse-linux-gnu)
GCC error:|
| in tree_low_cst, at tree.c:6441                                          |
| Error detected around discr31.adb:12:1

#0  internal_error (gmsgid=0x92e69cf "in %s, at %s:%d")
    at /home/eric/svn/gcc/gcc/diagnostic.c:837
#1  0x0909efc2 in fancy_abort (file=0x91b9220 "/home/eric/svn/gcc/gcc/tree.c",
    line=6441, function=0x91bb8ce "tree_low_cst")
    at /home/eric/svn/gcc/gcc/diagnostic.c:893
#2  0x08aa8c07 in tree_low_cst (t=0xf7d9cf50, pos=0)
    at /home/eric/svn/gcc/gcc/tree.c:6441
#3  0x08a86f60 in int_bit_position (field=0xf7cd4c38)
    at /home/eric/svn/gcc/gcc/tree.c:2364
#4  0x0896be08 in build_ref_for_model (loc=41221, base=0xf7d92ea0, offset=32,
    model=0x9a99d50, gsi=0xffffcd34, insert_after=0 '\000')
    at /home/eric/svn/gcc/gcc/tree-sra.c:1425
#5  0x0896f6a1 in generate_subtree_copies (access=0x9a99d50, agg=0xf7d92ea0,
    top_offset=0, start_offset=0, chunk_size=0, gsi=0xffffcd34,
    write=0 '\000', insert_after=0 '\000', loc=41221)
    at /home/eric/svn/gcc/gcc/tree-sra.c:2297
#6  0x0897155b in sra_modify_assign (stmt=0xffffcd30, gsi=0xffffcd34)
    at /home/eric/svn/gcc/gcc/tree-sra.c:2823
#7  0x08971c07 in sra_modify_function_body ()
    at /home/eric/svn/gcc/gcc/tree-sra.c:2942
#8  0x08972185 in perform_intra_sra ()
#9  0x08972280 in early_intra_sra () at /home/eric/svn/gcc/gcc/tree-sra.c:3079

Testcase suitable for the gnat.dg testsuite to be attached, run 'gnatchop' on
it and compile at -O the .adb file.


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