On Fri, Jun 21, 2019 at 1:50 PM Iain Sandoe <idsan...@googlemail.com> wrote: > > > > On 21 Jun 2019, at 11:40, Martin Liška <mli...@suse.cz> wrote: > > > > On 6/21/19 12:34 PM, Iain Sandoe wrote: > >> > >>> On 21 Jun 2019, at 11:28, Jonathan Wakely <jwakely....@gmail.com> wrote: > >>> > >>> On Fri, 21 Jun 2019 at 11:22, Martin Liška <mli...@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" <mli...@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 <mli...@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. > > > > Thank you for the information. > > > > Yes, I would be fine to deprecate that for GCC 10.1 > > “thinking aloud” - would it work to deprecate (or even disallow immediately > if no-one is using it) LTO + frepo? > (so that non-LTO frepo continues as long as anyone needs it)
Does that even work? ;) It would need an intermediate compile-step to instantiate templates to another LTO object. Richard. > > Iain > > > >