public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug lto/41487]  New: ICE in duplicate_node_data, at ipa-pure-const.c:633
@ 2009-09-28 11:22 rguenth at gcc dot gnu dot org
  2009-09-28 11:35 ` [Bug lto/41487] " rguenth at gcc dot gnu dot org
                   ` (13 more replies)
  0 siblings, 14 replies; 15+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-09-28 11:22 UTC (permalink / raw)
  To: gcc-bugs

With -O3 -ffast-math -funroll-loops -flto -fwhole-program both 453.povray
and 483.xalancbmk ICE with

lto1: internal compiler error: in duplicate_node_data, at ipa-pure-const.c:633
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.

no reduced testcase yet.  453.povray may be easier to reduce as it is a lot
smaller.


-- 
           Summary: ICE in duplicate_node_data, at ipa-pure-const.c:633
           Product: gcc
           Version: 4.5.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: lto
        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=41487


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug lto/41487] ICE in duplicate_node_data, at ipa-pure-const.c:633
  2009-09-28 11:22 [Bug lto/41487] New: ICE in duplicate_node_data, at ipa-pure-const.c:633 rguenth at gcc dot gnu dot org
@ 2009-09-28 11:35 ` rguenth at gcc dot gnu dot org
  2009-09-28 15:34 ` hubicka at ucw dot cz
                   ` (12 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-09-28 11:35 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from rguenth at gcc dot gnu dot org  2009-09-28 11:35 -------
For povray we come from ipa-cp:

#2  0x0000000000b8a841 in duplicate_node_data (src=0x7ffff435a400, 
    dst=0x7ffff4345900, data=0x0)
    at /space/rguenther/src/svn/lto/gcc/ipa-pure-const.c:633
#3  0x0000000000b6c26d in cgraph_call_node_duplication_hooks (
    node1=0x7ffff435a400, node2=0x7ffff4345900)
    at /space/rguenther/src/svn/lto/gcc/cgraph.c:394
#4  0x0000000000b6f9b3 in cgraph_clone_node (n=0x7ffff435a400, count=0, 
    freq=1000, loop_nest=0, update_original=0 '\000')
    at /space/rguenther/src/svn/lto/gcc/cgraph.c:1713
#5  0x0000000000b6fda1 in cgraph_create_virtual_clone (
    old_node=0x7ffff435a400, redirect_callers=0x33d6fb0, 
    tree_map=0x7ffff7edafb0, args_to_skip=0x7ffff6dda2e0)
    at /space/rguenther/src/svn/lto/gcc/cgraph.c:1773
#6  0x0000000000b7abfc in ipcp_insert_stage ()
    at /space/rguenther/src/svn/lto/gcc/ipa-cp.c:1187
#7  0x0000000000b7b11f in ipcp_driver ()
    at /space/rguenther/src/svn/lto/gcc/ipa-cp.c:1245

I'd say something is removing a cgraph node without properly calling back
to the node removal hook.  Or for some reason we re-use a not freed
UID.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |hubicka at gcc dot gnu dot
                   |                            |org


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug lto/41487] ICE in duplicate_node_data, at ipa-pure-const.c:633
  2009-09-28 11:22 [Bug lto/41487] New: ICE in duplicate_node_data, at ipa-pure-const.c:633 rguenth at gcc dot gnu dot org
  2009-09-28 11:35 ` [Bug lto/41487] " rguenth at gcc dot gnu dot org
@ 2009-09-28 15:34 ` hubicka at ucw dot cz
  2009-09-30 11:17 ` rguenth at gcc dot gnu dot org
                   ` (11 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: hubicka at ucw dot cz @ 2009-09-28 15:34 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from hubicka at ucw dot cz  2009-09-28 15:34 -------
Subject: Re:  ICE in duplicate_node_data, at ipa-pure-const.c:633

> I'd say something is removing a cgraph node without properly calling back
> to the node removal hook.  Or for some reason we re-use a not freed
> UID.

I think the problem here is that at LTO reading, we first read the
cgraphs then unify nodes and then call the read hooks that do not expect
unification to happen.

Honza


-- 


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug lto/41487] ICE in duplicate_node_data, at ipa-pure-const.c:633
  2009-09-28 11:22 [Bug lto/41487] New: ICE in duplicate_node_data, at ipa-pure-const.c:633 rguenth at gcc dot gnu dot org
  2009-09-28 11:35 ` [Bug lto/41487] " rguenth at gcc dot gnu dot org
  2009-09-28 15:34 ` hubicka at ucw dot cz
@ 2009-09-30 11:17 ` rguenth at gcc dot gnu dot org
  2009-09-30 11:18 ` rguenth at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-09-30 11:17 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from rguenth at gcc dot gnu dot org  2009-09-30 11:17 -------
Created an attachment (id=18674)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=18674&action=view)
reduced testcase, part1


-- 


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug lto/41487] ICE in duplicate_node_data, at ipa-pure-const.c:633
  2009-09-28 11:22 [Bug lto/41487] New: ICE in duplicate_node_data, at ipa-pure-const.c:633 rguenth at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2009-09-30 11:17 ` rguenth at gcc dot gnu dot org
@ 2009-09-30 11:18 ` rguenth at gcc dot gnu dot org
  2009-09-30 11:19 ` rguenth at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-09-30 11:18 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from rguenth at gcc dot gnu dot org  2009-09-30 11:18 -------
Created an attachment (id=18675)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=18675&action=view)
reduced testcase, part2


-- 


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug lto/41487] ICE in duplicate_node_data, at ipa-pure-const.c:633
  2009-09-28 11:22 [Bug lto/41487] New: ICE in duplicate_node_data, at ipa-pure-const.c:633 rguenth at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2009-09-30 11:18 ` rguenth at gcc dot gnu dot org
@ 2009-09-30 11:19 ` rguenth at gcc dot gnu dot org
  2009-09-30 11:51 ` rguenth at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-09-30 11:19 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from rguenth at gcc dot gnu dot org  2009-09-30 11:18 -------
Reduced from 453.povray:

lto-g/gcc> ./g++ -B. -o povray -nostdlib -shared -fPIC -O -flto torus.3.ii
bezier.3.ii 
lto1: internal compiler error: in duplicate_node_data, at ipa-pure-const.c:633
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2009-09-30 11:18:56
               date|                            |


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug lto/41487] ICE in duplicate_node_data, at ipa-pure-const.c:633
  2009-09-28 11:22 [Bug lto/41487] New: ICE in duplicate_node_data, at ipa-pure-const.c:633 rguenth at gcc dot gnu dot org
                   ` (4 preceding siblings ...)
  2009-09-30 11:19 ` rguenth at gcc dot gnu dot org
@ 2009-09-30 11:51 ` rguenth at gcc dot gnu dot org
  2009-09-30 13:01 ` rguenth at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-09-30 11:51 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from rguenth at gcc dot gnu dot org  2009-09-30 11:51 -------
More reduced:

a.c:
extern "C" double sqrt (double __x) throw ();
typedef double VECTOR[3];
enum { X = 0,  Y = 1,  Z = 2,  T = 3 };
inline void VLength(double& a, const VECTOR b)
{
  a = sqrt(b[X] * b[X] + b[Y] * b[Y] + b[Z] * b[Z]);
}
void 
determine_subpatch_flatness(void)
{
  double temp1;
  VECTOR TempV;
  VLength(temp1, TempV);
  VLength(temp1, TempV);
}

b.c:
extern "C" double sqrt (double __x) throw ();
typedef double VECTOR[3];
enum { X = 0,  Y = 1,  Z = 2,  T = 3 };
inline void VLength(double& a, const VECTOR b)
{
  a = sqrt(b[X] * b[X] + b[Y] * b[Y] + b[Z] * b[Z]);
}
int
All_Torus_Intersections(void)
{
  double len;
  VECTOR D;
  VLength(len, D);
  VLength(len, D);
}


-- 


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug lto/41487] ICE in duplicate_node_data, at ipa-pure-const.c:633
  2009-09-28 11:22 [Bug lto/41487] New: ICE in duplicate_node_data, at ipa-pure-const.c:633 rguenth at gcc dot gnu dot org
                   ` (5 preceding siblings ...)
  2009-09-30 11:51 ` rguenth at gcc dot gnu dot org
@ 2009-09-30 13:01 ` rguenth at gcc dot gnu dot org
  2009-09-30 14:34 ` hubicka at ucw dot cz
                   ` (6 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-09-30 13:01 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from rguenth at gcc dot gnu dot org  2009-09-30 13:01 -------
During pure_const_read_summary lto_cgraph_encoder_deref returns a reference
to a bogus cgraph node (it's all zeros, just the UID is filled in).  Later
the cgraph node gets reused by cgraph_clone_node.  So something like the
following solves this for the testcase:

Index: ipa-pure-const.c
===================================================================
--- ipa-pure-const.c    (revision 152324)
+++ ipa-pure-const.c    (working copy)
@@ -788,7 +788,8 @@ pure_const_read_summary (void)
              index = lto_input_uleb128 (ib);
              encoder = file_data->cgraph_node_encoder;
              node = lto_cgraph_encoder_deref (encoder, index);
-             set_function_state (node, fs);
+             if (node->decl)
+               set_function_state (node, fs);

              /* Note that the flags must be read in the opposite
                 order in which they were written (the bitflags were


-- 


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug lto/41487] ICE in duplicate_node_data, at ipa-pure-const.c:633
  2009-09-28 11:22 [Bug lto/41487] New: ICE in duplicate_node_data, at ipa-pure-const.c:633 rguenth at gcc dot gnu dot org
                   ` (6 preceding siblings ...)
  2009-09-30 13:01 ` rguenth at gcc dot gnu dot org
@ 2009-09-30 14:34 ` hubicka at ucw dot cz
  2009-09-30 14:38 ` rguenther at suse dot de
                   ` (5 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: hubicka at ucw dot cz @ 2009-09-30 14:34 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from hubicka at ucw dot cz  2009-09-30 14:33 -------
Subject: Re:  ICE in duplicate_node_data, at ipa-pure-const.c:633

> 
> 
> ------- Comment #7 from rguenth at gcc dot gnu dot org  2009-09-30 13:01 -------
> During pure_const_read_summary lto_cgraph_encoder_deref returns a reference
> to a bogus cgraph node (it's all zeros, just the UID is filled in).  Later

That is obviously another instance of problem that summaries are read
for nodes that was eliminated during merging declarations from mulitple
TUs.

If we can easilly figure out what cgraph nodes are eliminated by looking
at cgraph->decl, I would propose adding some more readable API and
updating the read methods.  My last debugging session with this ended
with conclussion that the decisions are not fixed yet though, but it
looks things has changed.

Honza


-- 


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug lto/41487] ICE in duplicate_node_data, at ipa-pure-const.c:633
  2009-09-28 11:22 [Bug lto/41487] New: ICE in duplicate_node_data, at ipa-pure-const.c:633 rguenth at gcc dot gnu dot org
                   ` (7 preceding siblings ...)
  2009-09-30 14:34 ` hubicka at ucw dot cz
@ 2009-09-30 14:38 ` rguenther at suse dot de
  2009-09-30 15:12 ` hubicka at ucw dot cz
                   ` (4 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: rguenther at suse dot de @ 2009-09-30 14:38 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from rguenther at suse dot de  2009-09-30 14:38 -------
Subject: Re:  ICE in duplicate_node_data, at
 ipa-pure-const.c:633

On Wed, 30 Sep 2009, hubicka at ucw dot cz wrote:

> ------- Comment #8 from hubicka at ucw dot cz  2009-09-30 14:33 -------
> Subject: Re:  ICE in duplicate_node_data, at ipa-pure-const.c:633
> 
> > 
> > 
> > ------- Comment #7 from rguenth at gcc dot gnu dot org  2009-09-30 13:01 -------
> > During pure_const_read_summary lto_cgraph_encoder_deref returns a reference
> > to a bogus cgraph node (it's all zeros, just the UID is filled in).  Later
> 
> That is obviously another instance of problem that summaries are read
> for nodes that was eliminated during merging declarations from mulitple
> TUs.
> 
> If we can easilly figure out what cgraph nodes are eliminated by looking
> at cgraph->decl, I would propose adding some more readable API and
> updating the read methods.  My last debugging session with this ended
> with conclussion that the decisions are not fixed yet though, but it
> looks things has changed.

The merge decisions should be all settled at that point.  I don't know
if checking cgraph->decl is reliable though (I didn't trace to where
we allocate and not fill that node).

Richard.


-- 


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug lto/41487] ICE in duplicate_node_data, at ipa-pure-const.c:633
  2009-09-28 11:22 [Bug lto/41487] New: ICE in duplicate_node_data, at ipa-pure-const.c:633 rguenth at gcc dot gnu dot org
                   ` (8 preceding siblings ...)
  2009-09-30 14:38 ` rguenther at suse dot de
@ 2009-09-30 15:12 ` hubicka at ucw dot cz
  2009-09-30 15:14 ` rguenther at suse dot de
                   ` (3 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: hubicka at ucw dot cz @ 2009-09-30 15:12 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from hubicka at ucw dot cz  2009-09-30 15:11 -------
Subject: Re:  ICE in duplicate_node_data, at ipa-pure-const.c:633

> The merge decisions should be all settled at that point.  I don't know
> if checking cgraph->decl is reliable though (I didn't trace to where
> we allocate and not fill that node).

It would be probably better to simply return NULL instead of allocating
fake node outside cgraph.  It will make code not aware of the fact that
some nodes disappear at reading time happilly ICE too.


-- 


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug lto/41487] ICE in duplicate_node_data, at ipa-pure-const.c:633
  2009-09-28 11:22 [Bug lto/41487] New: ICE in duplicate_node_data, at ipa-pure-const.c:633 rguenth at gcc dot gnu dot org
                   ` (9 preceding siblings ...)
  2009-09-30 15:12 ` hubicka at ucw dot cz
@ 2009-09-30 15:14 ` rguenther at suse dot de
  2009-10-04 13:57 ` rguenth at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: rguenther at suse dot de @ 2009-09-30 15:14 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #11 from rguenther at suse dot de  2009-09-30 15:14 -------
Subject: Re:  ICE in duplicate_node_data, at
 ipa-pure-const.c:633

On Wed, 30 Sep 2009, hubicka at ucw dot cz wrote:

> ------- Comment #10 from hubicka at ucw dot cz  2009-09-30 15:11 -------
> Subject: Re:  ICE in duplicate_node_data, at ipa-pure-const.c:633
> 
> > The merge decisions should be all settled at that point.  I don't know
> > if checking cgraph->decl is reliable though (I didn't trace to where
> > we allocate and not fill that node).
> 
> It would be probably better to simply return NULL instead of allocating
> fake node outside cgraph.  It will make code not aware of the fact that
> some nodes disappear at reading time happilly ICE too.

Yeah, that sounds like a good idea.  Or read in summary data before
merging nodes ...

Richard.


-- 


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug lto/41487] ICE in duplicate_node_data, at ipa-pure-const.c:633
  2009-09-28 11:22 [Bug lto/41487] New: ICE in duplicate_node_data, at ipa-pure-const.c:633 rguenth at gcc dot gnu dot org
                   ` (10 preceding siblings ...)
  2009-09-30 15:14 ` rguenther at suse dot de
@ 2009-10-04 13:57 ` rguenth at gcc dot gnu dot org
  2009-10-05 14:06 ` rguenth at gcc dot gnu dot org
  2009-10-05 14:17 ` rguenth at gcc dot gnu dot org
  13 siblings, 0 replies; 15+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-10-04 13:57 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #12 from rguenth at gcc dot gnu dot org  2009-10-04 13:57 -------
I have a patch that seems to solve this in conjunction with PR41552.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |rguenth at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2009-09-30 11:18:56         |2009-10-04 13:57:26
               date|                            |


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug lto/41487] ICE in duplicate_node_data, at ipa-pure-const.c:633
  2009-09-28 11:22 [Bug lto/41487] New: ICE in duplicate_node_data, at ipa-pure-const.c:633 rguenth at gcc dot gnu dot org
                   ` (11 preceding siblings ...)
  2009-10-04 13:57 ` rguenth at gcc dot gnu dot org
@ 2009-10-05 14:06 ` rguenth at gcc dot gnu dot org
  2009-10-05 14:17 ` rguenth at gcc dot gnu dot org
  13 siblings, 0 replies; 15+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-10-05 14:06 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #13 from rguenth at gcc dot gnu dot org  2009-10-05 14:06 -------
Subject: Bug 41487

Author: rguenth
Date: Mon Oct  5 14:05:54 2009
New Revision: 152450

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=152450
Log:
2009-10-05  Richard Guenther  <rguenther@suse.de>

        PR lto/41552
        PR lto/41487
        * lto-symtab.c (struct lto_symtab_base_def): Remove.
        (struct lto_symtab_identifier_def): Likewise.
        (struct lto_symtab_decl_def): Likewise.
        (struct lto_symtab_entry_def): New.
        (lto_symtab_identifier_t): Rename to ...
        (lto_symtab_entry_t): ... this.
        (lto_symtab_decls): Remove.
        (lto_symtab_base_hash): Rename to ...
        (lto_symtab_entry_hash): ... this.
        (lto_symtab_base_eq): Rename to ...
        (lto_symtab_entry_eq): ... this.
        (lto_symtab_base_marked_p): Rename to ...
        (lto_symtab_entry_marked_p): ... this.
        (lto_symtab_identifier_marked_p): Remove.
        (lto_symtab_decl_marked_p): Likewise.
        (lto_symtab_maybe_init_hash_tables): Rename to ...
        (lto_symtab_maybe_init_hash_table): ... this.
        (lto_symtab_set_resolution_and_file_data): Remove.
        (lto_symtab_register_decl): New function.
        (lto_symtab_get_identifier): Remove.
        (lto_symtab_get): New function.
        (lto_symtab_get_resolution): Adjust.
        (lto_symtab_get_identifier_decl): Remove.
        (lto_symtab_set_identifier_decl): Likewise.
        (lto_symtab_merge_decl): Rename to ...
        (lto_symtab_merge): ... this.  Rewrite.
        (lto_symtab_merge_var): Remove.
        (lto_symtab_merge_fn): Likewise.
        (lto_symtab_prevailing_decl): Adjust.
        (lto_cgraph_replace_node): New function.
        (lto_symtab_merge_decls_2): Likewise.
        (lto_symtab_merge_decls_1): Likewise.
        (lto_symtab_fixup_var_decls): Likewise.
        (lto_symtab_resolve_symbols): Likewise.
        (lto_symtab_merge_decls): Likewise.
        (lto_symtab_prevailing_decl): Adjust.
        (lto_symtab_get_symtab_def): Remove.
        (lto_symtab_get_file_data): Likewise.
        (lto_symtab_clear_resolution): Adjust.
        (lto_symtab_clear_resolution): Likewise.
        * lto-cgraph.c (input_edge): Do not merge cgraph nodes here.
        (input_cgraph_1): Likewise.
        * lto-streamer-in.c (get_resolution): Do not provide fake
        symbol resolutions here.
        (deferred_global_decls): Remove.
        (lto_register_deferred_decls_in_symtab): Likewise.
        (lto_register_var_decl_in_symtab): Change signature, register
        variable via lto_symtab_register_decl.
        (lto_register_function_decl_in_symtab): Likewise.
        (lto_read_tree): Adjust.
        * lto-streamer.h (lto_register_deferred_decls_in_symtab): Remove.
        (lto_symtab_merge_var): Likewise.
        (lto_symtab_merge_fn): Likewise.
        (lto_symtab_register_decl): Declare.
        (lto_symtab_merge_decls): Likewise.

        lto/
        * lto.c (lto_read_decls): Do not register deferred decls.
        (read_cgraph_and_symbols): Delay symbol and cgraph merging
        until after reading the IPA summaries.

        * g++.dg/lto/20091002-1_0.C: Adjust flags.
        * g++.dg/lto/20091004-1_0.C: New testcase.
        * g++.dg/lto/20091004-1_1.C: Likewise.
        * g++.dg/lto/20091004-2_0.C: Likewise.
        * g++.dg/lto/20091004-2_1.C: Likewise.
        * g++.dg/lto/20091004-3_0.C: Likewise.
        * g++.dg/lto/20091004-3_1.C: Likewise.

Added:
    trunk/gcc/testsuite/g++.dg/lto/20091004-1_0.C
    trunk/gcc/testsuite/g++.dg/lto/20091004-1_1.C
    trunk/gcc/testsuite/g++.dg/lto/20091004-2_0.C
    trunk/gcc/testsuite/g++.dg/lto/20091004-2_1.C
    trunk/gcc/testsuite/g++.dg/lto/20091004-3_0.C
    trunk/gcc/testsuite/g++.dg/lto/20091004-3_1.C
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/lto-cgraph.c
    trunk/gcc/lto-streamer-in.c
    trunk/gcc/lto-streamer.h
    trunk/gcc/lto-symtab.c
    trunk/gcc/lto/ChangeLog
    trunk/gcc/lto/lto.c
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/g++.dg/lto/20091002-1_0.C


-- 


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [Bug lto/41487] ICE in duplicate_node_data, at ipa-pure-const.c:633
  2009-09-28 11:22 [Bug lto/41487] New: ICE in duplicate_node_data, at ipa-pure-const.c:633 rguenth at gcc dot gnu dot org
                   ` (12 preceding siblings ...)
  2009-10-05 14:06 ` rguenth at gcc dot gnu dot org
@ 2009-10-05 14:17 ` rguenth at gcc dot gnu dot org
  13 siblings, 0 replies; 15+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-10-05 14:17 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #14 from rguenth at gcc dot gnu dot org  2009-10-05 14:17 -------
Fixed.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED
   Target Milestone|---                         |4.5.0


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


^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2009-10-05 14:17 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-09-28 11:22 [Bug lto/41487] New: ICE in duplicate_node_data, at ipa-pure-const.c:633 rguenth at gcc dot gnu dot org
2009-09-28 11:35 ` [Bug lto/41487] " rguenth at gcc dot gnu dot org
2009-09-28 15:34 ` hubicka at ucw dot cz
2009-09-30 11:17 ` rguenth at gcc dot gnu dot org
2009-09-30 11:18 ` rguenth at gcc dot gnu dot org
2009-09-30 11:19 ` rguenth at gcc dot gnu dot org
2009-09-30 11:51 ` rguenth at gcc dot gnu dot org
2009-09-30 13:01 ` rguenth at gcc dot gnu dot org
2009-09-30 14:34 ` hubicka at ucw dot cz
2009-09-30 14:38 ` rguenther at suse dot de
2009-09-30 15:12 ` hubicka at ucw dot cz
2009-09-30 15:14 ` rguenther at suse dot de
2009-10-04 13:57 ` rguenth at gcc dot gnu dot org
2009-10-05 14:06 ` rguenth at gcc dot gnu dot org
2009-10-05 14:17 ` rguenth at gcc dot gnu dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).