[LLVMdev] [PATCH 0/2 v3] add visibility hidden to tls entry points

Sedat Dilek
2015-02-25T16:49:28Z

On Fri, Feb 20, 2015 at 1:45 PM, Sedat Dilek <sedat.dilek at gmail.com>
wrote:
> On Tue, Feb 17, 2015 at 1:55 PM, Sedat Dilek <sedat.dilek at
gmail.com> wrote:
>> On Tue, Feb 17, 2015 at 10:40 AM, Marc Dietrich <marvin24 at
gmx.de> wrote:
>>> Patch 1 adds a check for the compilers visibility macro to
configure.ac.
>>> Patch 2 avoids redefined symbol errors in clang of the tls entry
points.
>>> Based on a suggestion from Rafael Ávila de Espíndola
<rafael.espindola at gmail.com>
>>> in http://llvm.org/bugs/show_bug.cgi?id=19778.
>>>
>>> Tested with gcc 4.9 and clang 3.6(rc)
>>>
>>> Marc Dietrich (2):
>>>   configure: add visibility macro detection to configure
>>>   add visibility hidden to tls entry points
>>>
>>>  configure.ac                | 28 ++++++----------------------
>>>  src/mapi/Makefile.am        |  1 +
>>>  src/mapi/entry_x86-64_tls.h |  4 ++--
>>>  src/mapi/entry_x86_tls.h    |  5 +++--
>>>  src/mapi/entry_x86_tsd.h    |  5 +++--
>>>  src/util/macros.h           |  6 ++++++
>>>  6 files changed, 21 insertions(+), 28 deletions(-)
>>>
>>
>> Tested-by: Sedat Dilek <sedat.dilek at gmail.com> (mesa v10.4.4
with
>> llvm-toolchain v3.6.0rc2)
>>
>
> Tested-by: Sedat Dilek <sedat.dilek at gmail.com> (mesa v10.4.4 with
> llvm-toolchain v3.6.0rc*3* with compiler-rt)
>
> I re-compiled my Linux graphics driver stack with a self-compiled
> llvm-toolchain v3.6.0rc3.
>
> libdrm: v2.4.59
> mesa: v10.4.4 (plus gallivm-fixes and visibility-macro-detection
> support) + configure: --enable-glx-tls
> intel-ddx: v2.99.917-149-g09b0ab9b4384
>
> What about renaming your patches to...?
>
> 1/2: "configure: add visibility macro detection"
> 2/2: "mapi: add visibility hidden to tls entry points"
>
> Even 1/2 should reflect it's a code-generation option for compilers
> like GCC or LLVM/Clang.
> It's up2u.
> Please have a look at [1], too.
>
> Thanks.
>
> - Sedat -
>
> [1] https://gcc.gnu.org/onlinedocs/gcc/Code-Gen-Options.html ->
> "-fvisibility=[default|internal|hidden|protected]"

Ping!?

- Sedat -