This is the mail archive of the
mailing list for the GCC project.
Re: missing symbols in libstdc++.so.6 built from the 4.9 branch
- From: John David Anglin <dave dot anglin at bell dot net>
- To: Hans-Peter Nilsson <hp at bitrange dot com>, Jonathan Wakely <jwakely dot gcc at gmail dot com>
- Cc: Matthias Klose <doko at ubuntu dot com>, "libstdc++ at gcc dot gnu dot org" <libstdc++ at gcc dot gnu dot org>, gcc Development <gcc at gcc dot gnu dot org>, Ramana Radhakrishnan <ramana dot radhakrishnan at arm dot com>, Richard Earnshaw <Richard dot Earnshaw at arm dot com>, Aurelien Jarno <aurel32 at debian dot org>
- Date: Fri, 4 Jul 2014 10:25:27 -0400
- Subject: Re: missing symbols in libstdc++.so.6 built from the 4.9 branch
- Authentication-results: sourceware.org; auth=none
- References: <53B273E6 dot 8040402 at ubuntu dot com> <CAH6eHdRQt13=pQesbAOwOVVYuuQQw=rD-cWC0+Ugv7ndDBJ+3w at mail dot gmail dot com> <BLU436-SMTP48F2A40D90438F0564A7BC97070 at phx dot gbl> <CAH6eHdRCvz+fyz6qcgzQhY9_-R-o7wW6FhvzAczUqCyGDRe38A at mail dot gmail dot com> <alpine dot BSF dot 2 dot 02 dot 1407040002170 dot 7444 at arjuna dot pair dot com>
On 7/4/2014 12:08 AM, Hans-Peter Nilsson wrote:
Currently, c-cppbuiltin.c doesn't provide proper defines for this support.
> >currently define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4, etc, in
I thought that was cheating! 1/2:)
> I'll experiment with defining ATOMIC_INT_LOCK_FREE there.
>It should already be defined,
Yes, if the proper insn patterns are in place, those macros are
automatically defined. They aren't if library functions are
called, regardless of lock-freelessness of those functions.
That is the problem. I added the __GCC_HAVE_SYNC_COMPARE_AND_SWAP
defines when I saw that the library implementation was being detected
by some packages.
Trying an even bigger cheat:
#define HAVE_sync_compare_and_swapqi 1
#define HAVE_sync_compare_and_swaphi 1
#define HAVE_sync_compare_and_swapsi 1
This seems to give __GCC_ATOMIC_INT_LOCK_FREE = 2, etc.
Have to see if this works with our library functions :-
John David Anglin email@example.com