This is the mail archive of the
mailing list for the GCC project.
Re: [lto][patch] Use decl uid instead of node uid in ipa-pure-const
- From: Jan Hubicka <hubicka at ucw dot cz>
- To: Rafael Espindola <espindola at google dot com>
- Cc: Jan Hubicka <hubicka at ucw dot cz>, Diego Novillo <dnovillo at google dot com>, gcc-patches <gcc-patches at gcc dot gnu dot org>
- Date: Tue, 2 Jun 2009 11:19:03 +0200
- Subject: Re: [lto][patch] Use decl uid instead of node uid in ipa-pure-const
- References: <firstname.lastname@example.org> <20090529175423.GO7963@atrey.karlin.mff.cuni.cz> <email@example.com> <20090529202201.GA3586@kam.mff.cuni.cz> <firstname.lastname@example.org>
> > Ah, but it should not change nodes ids, it is simply resusing dead IDs
> > for new nodes. If it changes IDs on LTO, then something is wrong.
> I am sorry that I don't remember the details, but I think what was
> happening was something like
> * A node with id 42 is created
> * We (LTO) remember something about the node
> * That node is removed
When node is removed, the node removal hook is called that should
release the data. So it looks like bug is caused removing node w/o
calling the removal hook. I will revert the patch and look into it.
> * A new node with id 42 is created
> * LTO gets confused
> As Diego noticed, the clone infrastructure changed and the patch might
> not be necessary any more. What I would suggest is to revert it a tree
> and see if libgomp.c++/for-4.C still works. If it does, just remove
> the patch for real and continue with the merge.
> Rafael Avila de Espindola
> Google | Gordon House | Barrow Street | Dublin 4 | Ireland
> Registered in Dublin, Ireland | Registration Number: 368047