This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH 4/5] remove param$N_is usage
- From: Trevor Saunders <tsaunders at mozilla dot com>
- To: Jeff Law <law at redhat dot com>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Fri, 14 Nov 2014 06:02:47 -0500
- Subject: Re: [PATCH 4/5] remove param$N_is usage
- Authentication-results: sourceware.org; auth=none
- References: <1415858143-32692-1-git-send-email-tsaunders at mozilla dot com> <1415858143-32692-4-git-send-email-tsaunders at mozilla dot com> <546551AB dot 8090007 at redhat dot com>
On Thu, Nov 13, 2014 at 05:49:47PM -0700, Jeff Law wrote:
> On 11/12/14 22:55, tsaunders@mozilla.com wrote:
> >From: Trevor Saunders <tsaunders@mozilla.com>
> >
> >Hi,
> >
> >The only user of this is splay_tree. We only have a couple splay trees in ggc
> >memory, and it wasn't clear to me any of them were tree based instead of hash
> >based for performance reasons, so I chose to just convert them to hash_map
> >rather than writing a templated splay tree.
> >
> >bootstrapped + regtested x86_64-unknown-linux-gnu, ok?
> >
> >trev
> >
> >gcc/
> >
> > * hash-map.h (hash_map::iterator): New class.
> > (hash_map::begin): New method.
> > (hash_map::end): Likewise.
> > * alias.c, config/alpha/alpha.c, dwarf2asm.c, omp-low.c, tree.h:
> > replace splay_tree with hash_map.
> Splay trees in the alias code are very very old. They came in with the
> initial "restrict" support from Mark Mitchell many many years ago. I don't
> recall the reasoning behind using splay trees instead of hash tables or some
> other data structure.
fair enough, I could believe it was a case of what was handy,
splay_tree does make a nicer map than htab.
> In cases where you're removing the last remnants of a splay tree in a file,
> please make sure to remove the splay-tree include.
sure
> OK with the splay-tree include removal, but if we start to get reports that
> these data structures have become a bottleneck, we'll be looking to you to
> address that problem ;-)
of course, a C++ splay tree shouldn't be too hard, but the only use for
it I can see is ggc stuff where std::map won't really work.
thanks!
Trev
>
> jeff
>