This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Dropping support of repo files (tlink)
> On 21 Jun 2019, at 11:28, Jonathan Wakely <jwakely.gcc@gmail.com> wrote:
>
> On Fri, 21 Jun 2019 at 11:22, Martin Liška <mliska@suse.cz> wrote:
>>
>> On 6/20/19 9:53 PM, Richard Biener wrote:
>>> On June 20, 2019 5:09:55 PM GMT+02:00, "Martin Liška" <mliska@suse.cz> wrote:
>>>> On 6/20/19 4:21 PM, David Edelsohn wrote:
>>>>> On Thu, Jun 20, 2019 at 10:05 AM Martin Liška <mliska@suse.cz> wrote:
>>>>>>
>>>>>> Hi.
>>>>>>
>>>>>> In order to not buffer stderr output in LTO mode, I would like to
>>>> remove
>>>>>> support for repo files (tlink). If I'm correctly it's only used by
>>>> AIX
>>>>>> target. Would it be possible to drop that for the future? Is it even
>>>>>> used?
>>>>>
>>>>> AIX currently does not support GCC LTO, but the hope was that GCC
>>>>> would not do anything to specifically inhibit that ability to
>>>>> eventually support that feature. AIX currently needs collect2. I
>>>>> guess that AIX could try to find another mechanism when it adds
>>>>> support.
>>>>
>>>> Yes, I'm fine with collect2. I'm more precisely asking about
>>>> read_report_files
>>>> that lives in tlink.c. If I understand correctly, it's parsing output
>>>> of linker
>>>> and tries to find template implementations in a .rpo files that live on
>>>> a disk.
>>>> That's a legacy functionality that I'm targeting to remove.
>>>
>>> IIRC -frepo also works on Linux?
>>
>> Heh, you are right ;). Is there are consumer of that infrastructure
>> or can we just drop it?
>
> Anybody using option 2 at
> https://gcc.gnu.org/onlinedocs/gcc/Template-Instantiation.html
>
> I have no idea if anybody is using that, but we should at least
> deprecate it instead of just dropping a documented option without
> warning.
I should have been clearer about Darwin:
collect2 is required because it wraps the calling of lto-wrapper and ld.
FWIW Darwin also passes all the “-frepo” testcases, however, I’m not aware of anyone actually
using case #2 from Jonathan’s post.
So, AFAIK the tlink capability isn’t required for modern C++ on Darwin; but, maybe deprecation is a
safer step.
Iain