This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: PATCH: libstdc++/include/profile bug fixes and cleanup
- From: Paolo Carlini <paolo dot carlini at oracle dot com>
- To: Silvius Rus <rus at google dot com>
- Cc: libstdc++ <libstdc++ at gcc dot gnu dot org>, gcc-patches at gcc dot gnu dot org, Benjamin Kosnik <bkoz at redhat dot com>
- Date: Fri, 08 Jan 2010 00:45:48 +0100
- Subject: Re: PATCH: libstdc++/include/profile bug fixes and cleanup
- References: <e90dbffc1001071505n65f41ce3v8ed28f9214f673a@mail.gmail.com>
Hi,
just a few words, Benjamin knows your work much better than me...
> 4. Cleanup: Drop support for hash_map and hash_set.
> Requested by library maintainer Paolo Carlini.
> http://gcc.gnu.org/ml/libstdc++/2010-01/msg00026.html
>
Excellent. I totally support this, for all the reasons already explained.
> Tested:
> x86_64/linux make check-profile
> There were 14 FAILs. I will make them pass or ask for specific help
> before submitting.
>
Too bad. Last time I checked, a few days ago, things were ok, besides
the usual synopsis.cc, which are expected, and little else, I think...
>
> Questions to maintainers:
>
> 1. Currently, multithreaded execution of the profile mode requires
> TLS. Is this a reasonable way to test TLS support?
> #if (defined _GLIBCXX_PROFILE_THREADS) && !(defined HAVE_TLS)
> #error profile mode requires either -DHAVE_TLS or -D_GLIBCXX_PROFILE_NO_THREADS
>
In general, much better _GLIBCXX_HAVE_TLS, which is uglified, you can
find it used in a couple other places in the library, mutex.cc,
eh_globals.cc.
> 2. I am testing for execinfo.h with #ifdef HAVE_EXECINFO_H.
> What is the right way to make sure this gets set in a config file?
>
Again, in the library, in general, always prefer uglified things, thus
_GLIBCXX_HAVE_EXECINFO_H. Then I would guess that just adding execinfo.h
to the list of headers searched at line # 168 of configure.ac should be
enough (I suppose you know already how to regenerate the configury by
invoking autoreconf, using autoconf-2.64 and automake-1.11, those exact
versions of the tools, it's important)
Paolo.