[LLVMdev] Hidden-visibility aliases to default-visibility globals

Peter Collingbourne peter at pcc.me.uk
Tue May 14 11:08:43 PDT 2013


On Mon, Apr 01, 2013 at 03:49:14PM -0700, Peter Collingbourne wrote:
> On Thu, Mar 21, 2013 at 02:12:27PM +0900, Joerg Sonnenberger wrote:
> > On Wed, Mar 20, 2013 at 02:22:47PM -0700, Peter Collingbourne wrote:
> > > I am trying to compile a dynamic loader using LLVM.  Part of the IR
> > > for this loader looks like this:
> > > 
> > > @_rtld_local = hidden alias %struct.rtld_global* @_rtld_global
> > > @_rtld_global = unnamed_addr global %struct.rtld_global { ... }
> > 
> > Have you tried using protected visibility?
> 
> Oops, missed this message.  I think there was some reason why I thought
> protected visibility would not work, but I just tried it and it turns
> out that it does.  I'll see what upstream thinks and if they're ok
> with it I'll drop the patch.

Upstream didn't go for it [1] (for understandable performance reasons
[2], given that the dynamic loader will be linked into every executable
on the system).  Therefore, I'd like to ping my patch [3,4].

Thanks,
-- 
Peter

[1] http://sourceware.org/ml/libc-alpha/2013-05/msg00384.html
[2] http://www.airs.com/blog/archives/307
[3] http://llvm-reviews.chandlerc.com/D606
[4] http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20130401/170206.html



More information about the llvm-dev mailing list