On Mon, Mar 24, 2014 at 10:00:33AM -0400, Benjamin Smedberg wrote:
> izbyshev wrote:
> 
> >Is this configure check really relevant now? The fact that it is always
> >successfully passed by any compiler that can somehow compile the conftest.c
> >and that it has not been fixed since its introduction in 2006 probably shows
> >that no. Does anybody have ideas about what should be done with it, if any?
> 
> Interesting, that check was actually important for GCC versions which didn't
> obey visibility flags properly, but I don't actually know which ones those
> are any more... I think it was <4.2. It probably doesn't matter any more,
> but we might want to explicitly blacklist the known-bad GCC versions.

 A while ago I looked up what version the bugs mentioned in configure.in
 were fixed in, and iirc it was 4.1. Unless both of us are way wrong and
 they existed much more recently I'd expect configure already errors out
 for them because of -std=gnu++0x if not because of the version itself.

> On 3/24/2014 8:51 AM, Trevor Saunders wrote:
> 
> >Its certainly obsolete at this point however, its always failed on mac,
> >so we use -fvisibility=hidden instead of system wrappers there.  We'd
> >like to switch to using -fvisibility=hidden everywhere, but doing that
> >means I need to get around to figuring out why it adds ~7000 relocations
> >compared to the system wrappers.
> We would not like to use -fvisibility=hidden everywhere! -fvisibility=hidden

fwiw glandium seems to disagree with you
https://bugzilla.mozilla.org/show_bug.cgi?id=961264#c2
but of course he should speak for himself.

> is strictly worse than using the pragmas because it only affects symbol
> generation and doesn't affect symbol resolution. This means that we still
> have to use dynamic relocations against internal symbols when we should be
> using hidden relocations (on ELF platforms). It doesn't matter nearly as
> much or at all on Mach-O/PE which use startup relocations instead of a
> GOT/PLT.

The documentation doesn't make it clear that's the case, and it seems
like a very odd way of doing things.  In addition if it is the case then
I'm amazed linux builds I've done with -fvisibility=hidden only had 7k
more relocations than ones using the wrappers for all of libxul.

Trev

> 
> --BDS
> 
_______________________________________________
dev-builds mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-builds

Reply via email to