This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] PR rtl-optimization/32219: optimizer causees wrong code in pic/hidden/weak symbol checking


On Thu, Feb 12, 2015 at 11:16 AM, Jack Howarth <howarth.at.gcc@gmail.com> wrote:
> H.J.,
>    Oddly I saw no regressions in the g++ test suite at -m32/-m64 on
> x86_64-apple-darwin14.
>            Jack

They have

// { dg-require-effective-target tls }

Does x86_64-apple-darwin14 support TLS?  If yes, what does the
generated assembly code look like?

> On Thu, Feb 12, 2015 at 1:16 PM, H.J. Lu <hjl.tools@gmail.com> wrote:
>> On Wed, Feb 11, 2015 at 10:22 PM, Richard Henderson <rth@redhat.com> wrote:
>>> On 02/10/2015 01:19 PM, Richard Henderson wrote:
>>>> As an existing issue, I'm not sure why "specified" visibility is any different
>>>> from unspecified visibility.  As far as I'm aware, the "specified" bit simply
>>>> means that the decl doesn't inherit inherit visibility from the class, or from
>>>> the command-line.  But once we're this far, the visibility actually applied to
>>>> the symbol should be all that matters.
>>>
>>> The test is there to differentiate explicit visibility from that implied from
>>> the command-line.  Without it, we assume hidden visibility for external symbols
>>> too early, making the command-line option useless.  This is visible even in
>>> building libgcc.
>>>
>>> I believe this set of patches does what we want, and cleans things up a bit in
>>> the process.
>>>
>>>
>>
>> I tried them on Linux/x86-64.  They caused:
>>
>> FAIL: g++.dg/gomp/tls-wrap4.C  -std=gnu++11  scan-assembler-not _ZTW1i@PLT
>> FAIL: g++.dg/gomp/tls-wrap4.C  -std=gnu++11  scan-assembler-not _ZTW1i@PLT
>> FAIL: g++.dg/gomp/tls-wrap4.C  -std=gnu++14  scan-assembler-not _ZTW1i@PLT
>> FAIL: g++.dg/gomp/tls-wrap4.C  -std=gnu++14  scan-assembler-not _ZTW1i@PLT
>> FAIL: g++.dg/tls/thread_local-wrap4.C  -std=gnu++11
>> scan-assembler-not _ZTW1i@PLT
>> FAIL: g++.dg/tls/thread_local-wrap4.C  -std=gnu++11
>> scan-assembler-not _ZTW1i@PLT
>> FAIL: g++.dg/tls/thread_local-wrap4.C  -std=gnu++14
>> scan-assembler-not _ZTW1i@PLT
>> FAIL: g++.dg/tls/thread_local-wrap4.C  -std=gnu++14
>> scan-assembler-not _ZTW1i@PLT
>>
>>
>> --
>> H.J.



-- 
H.J.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]