<div dir="ltr">On Thu, Sep 12, 2013 at 2:43 PM, Nick Lewycky <span dir="ltr"><<a href="mailto:nlewycky@google.com" target="_blank">nlewycky@google.com</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div class="h5"><span style="color:rgb(34,34,34)">Yes, thanks. This is roughly what I was guessing -- a way of encoding the exposed symbols list (see tools/gold/gold.exports for an llvm example) in the source code.</span><br>
</div></div><div class="gmail_extra"><div class="gmail_quote">


<div><br></div><div>I do not understand how visibility is orthogonal to dllimport/dllexport. I can't think of any way that hidden + dllimport/dllexport makes sense. Neither does protected + dllimport, since there is no local copy of the symbol to bind to (we're importing it). Protected + dllexport could make sense, except that I don't see how it differs from protected (or on a regular windows system, dllexport). The only combination that makes sense is default + dllimport/dllexport.<br>
</div></div></div></div></blockquote><div><br></div><div>dllexport is actually closer to protected than default, and that's how ARM lowers dllexport when targeting ELF.</div><div><a href="http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dai0242a/BJFHFAHH.html">http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dai0242a/BJFHFAHH.html</a><br>
</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra">
<div class="gmail_quote"><div>Could you give me an example where you'd actually want to use these visibilities in combination?<span class=""><font color="#888888"><br><br></font></span></div><span class=""><font color="#888888"><div>
Nick<br></div>
</font></span></div></div></div>
<br>_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br>
<br></blockquote></div><br></div></div>