This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PR libgomp/64625] Remove __OFFLOAD_TABLE__ variable/formal parameter (was: Merge current set of OpenACC changes from gomp-4_0-branch)
- From: Jack Howarth <howarth dot at dot gcc at gmail dot com>
- To: Ilya Verbin <iverbin at gmail dot com>
- Cc: Thomas Schwinge <thomas at codesourcery dot com>, jakub at gcc dot gnu dot org, GCC Patches <gcc-patches at gcc dot gnu dot org>, howarth at bromo dot med dot uc dot edu, Dominique d'HumiÃres <dominiq at lps dot ens dot fr>, Andrey Turetskiy <andrey dot turetskiy at gmail dot com>, bernds at gcc dot gnu dot org, kyukhin at gcc dot gnu dot org
- Date: Fri, 16 Jan 2015 19:23:48 -0500
- Subject: Re: [PR libgomp/64625] Remove __OFFLOAD_TABLE__ variable/formal parameter (was: Merge current set of OpenACC changes from gomp-4_0-branch)
- Authentication-results: sourceware.org; auth=none
- References: <87egqvu77s dot fsf at schwinge dot name> <87r3uuzcqg dot fsf at kepler dot schwinge dot homeip dot net> <20150116224038 dot GA48380 at msticlxl57 dot ims dot intel dot com> <CAJMcOU8NGaS+N6LffnML1TGgv3wDSoxL-d40z-maOHquhMZb+g at mail dot gmail dot com> <20150116233038 dot GC48380 at msticlxl57 dot ims dot intel dot com>
As I read https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64625#c3, the
requirement for __OFFLOAD_TABLE__ was not longer present and the
residual usages of it just had to be removed. The weak symbol on
darwin is fragile and seems to trip up on the existing code which
produces undefined symbols for ___OFFLOAD_TABLE__...
# nm e.50.1.o | grep OFF
U ___OFFLOAD_TABLE__
rather than
$ nm e.50.1.o | grep OFF
w __OFFLOAD_TABLE__
for all of the test cases.
On Fri, Jan 16, 2015 at 6:30 PM, Ilya Verbin <iverbin@gmail.com> wrote:
> On 16 Jan 18:22, Jack Howarth wrote:
>> On 86_64 Fedora 15, current gcc trunk only producesâ
>>
>> nm libgcc_s.so.1 | grep OFF
>> 0000000000215478 d _GLOBAL_OFFSET_TABLE_
>>
>> and not __OFFLOAD_TABLE__, The libgcc_s.so.1 built on
>> x86_64-apple-darwin14 doesn't even contain the _GLOBAL_OFFSET_TABLE_
>> symbol.
>>
>> On Fri, Jan 16, 2015 at 5:40 PM, Ilya Verbin <iverbin@gmail.com> wrote:
>> > Why do you think so? __OFFLOAD_TABLE__ symbol lives in libgcc/offloadstuff.c
>> > since November without regressions.
>
> That's correct.
> 1. offloadstuff.c isn't linked into libgcc_s.so.1
> 2. __OFFLOAD_TABLE__ is guarded with ENABLE_OFFLOADING, which is disabled in
> default configuration.
>
> -- Ilya