This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Designs for better debug info in GCC
On Nov 25, 2007 12:28 AM, Alexandre Oliva <aoliva@redhat.com> wrote:
> On Nov 24, 2007, "Richard Guenther" <richard.guenther@gmail.com> wrote:
>
> > Generated code shouldn't change if we allocate extra DECL_UIDs, but
> > only possibly if we change DECL_UID ordering. (If that is the
> > problem, as I remember your analysis)
>
> That is indeed the problem, but I'm not sure your requirement is
> feasible. If we permit DECL_UID divergence, it means we can't use
> DECL_UID for hashing any more. Since they already stand for hashable
> proxies for the decl pointers, I don't see what we'd gain by
> introducing yet another hashable uid that's stable across -g.
>
> What do you suggest us to use for hashing? Or do you suggest us to do
> away with hashing and use sorted set or map data structures?
No, hashing is fine, but doing walks over a hashtable when your algorithm
depends on ordering is not. I have patches to fix the instance of walking
over all referenced vars. Which is in the case of UIDs using bitmaps and
a walk over a bitmap (which ensures walks in UID order).
Richard.