This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] [GOLD] Add plugin API for processing plugin-added input files
- From: Stephen Crane <sjc at immunant dot com>
- To: Sriraman Tallam <tmsriram at google dot com>
- Cc: Cary Coutant <ccoutant at gmail dot com>, Binutils <binutils at sourceware dot org>, GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Tue, 12 Dec 2017 10:50:58 -0800
- Subject: Re: [PATCH] [GOLD] Add plugin API for processing plugin-added input files
- Authentication-results: sourceware.org; auth=none
- References: <CAB7K5r44EtJiXZOiQzM+qqymKjooOTbyb7gikfOxbk7yoyrywg@mail.gmail.com> <CAAs8HmyFiWr6SKG-p+_zHGVBw7sSAoudO5b0qe_zaVPLK1HGmw@mail.gmail.com> <CAB7K5r4DaPN+bq=evZv5zmiEA3BQ8RCv-8ex6889J-AyNyCxdA@mail.gmail.com> <CAAs8HmxEMuOn=cjKOn_gNRv0ve4yshvt2VwLJAasq7d4fVc0Kg@mail.gmail.com> <CAJimCsGtFxP9uNivzrz_uV=V7FyznbzDAE8ZTKRR_+wPdJHO5A@mail.gmail.com> <87376dlcb9.fsf_-_@immunant.com> <CAB7K5r5DvEE7dU7PwhquXKx=gjteQzmcv=1BbG-tBzXGa23CUg@mail.gmail.com> <CAJimCsE9tF6toFSeyv2M-qSVmX_cNQySCb62ENTy4uhvtDRWTA@mail.gmail.com> <87r2t7j584.fsf@immunant.com> <CAJimCsEufRqAwaHOzW9PcS3GOVXbYa=mVMUSZya23D0Lzdv7Dg@mail.gmail.com> <CAAs8Hmx=TAefxd22HctUaNP5wcASOv34_zRuzYsm1_7rLttJYw@mail.gmail.com> <CAB7K5r6qyBk2_UX+qXj-ZYWHLx29a1zL-cbKMNdZKW7GNhGZzA@mail.gmail.com> <CAAs8HmxK9XU0GfgRofwrxFzUQ1jmFyPYiJM=_7WahYFZc5SdxQ@mail.gmail.com>
Thank you so much. I just added documentation for the new hook to
https://gcc.gnu.org/wiki/whopr/driver so that should finish off this
feature.
I'm happy to fix any bugs that might crop up related to this hook, of
course. I don't follow the binutils list closely, so I apologize in
advance if I miss any issues related to this feature. Just CC me
explicitly and I'll jump on it.
Thanks,
- stephen
On Mon, Dec 11, 2017 at 3:03 PM, Sriraman Tallam <tmsriram@google.com> wrote:
> On Mon, Dec 11, 2017 at 2:16 PM, Stephen Crane <sjc@immunant.com> wrote:
>> Thanks for committing the GCC portion and following up on this. I had
>> been meaning to write and ask. I don't have commit privs for binutils,
>> so either you or Cary will have to commit the binutils patch as well,
>> if it's not too much trouble. I think much has changed to need a
>> rebase?
>
> I just committed your patch. I had to make one very minor change to
> plugin_new_section_layout.c to compile, move the loop initialization
> declaration outside as that is not allowed on C. I tested the patch.
>
> Thanks
> Sri
>
>>
>> Thanks,
>> Stephen
>>
>> On Mon, Dec 11, 2017 at 2:10 PM, Sriraman Tallam <tmsriram@google.com> wrote:
>>> On Thu, Nov 9, 2017 at 9:04 PM, Cary Coutant <ccoutant@gmail.com> wrote:
>>>>> include/ChangeLog:
>>>>> 2017-11-09 Stephen Crane <sjc@immunant.com>
>>>>>
>>>>> * plugin-api.h: Add new plugin hook to allow processing of input
>>>>> files added by a plugin.
>>>>> (ld_plugin_new_input_handler): New funcion hook type.
>>>>> (ld_plugin_register_new_input): New interface.
>>>>> (LDPT_REGISTER_NEW_INPUT_HOOK): New enum val.
>>>>> (tv_register_new_input): New member.
>>>>>
>>>>>
>>>>> gold/ChangeLog:
>>>>> 2017-11-09 Stephen Crane <sjc@immunant.com>
>>>>>
>>>>> * plugin.cc (Plugin::load): Include hooks for register_new_input
>>>>> in transfer vector.
>>>>> (Plugin::new_input): New function.
>>>>> (register_new_input): New function.
>>>>> (Plugin_manager::claim_file): Call Plugin::new_input if in
>>>>> replacement phase.
>>>>> * plugin.h (Plugin::set_new_input_handler): New function.
>>>>> * testsuite/plugin_new_section_layout.c: New plugin to test
>>>>> new_input plugin API.
>>>>> * testsuite/plugin_final_layout.sh: Add new input test.
>>>>> * testsuite/Makefile.am (plugin_layout_new_file): New test case.
>>>>> * testsuite/Makefile.in: Regenerate.
>>>>
>>>> These are OK. Thanks!
>>>>
>>>> Sri, I'm out of town through 11/18, and won't be able to commit the
>>>> include/ patch to GCC before Stage 1 ends. Can you take care of it?
>>>> (If not, I'll take care of it when I get back -- it was approved
>>>> during Stage 1, so I think it's OK to commit early in Stage 3,
>>>> especially since it's nothing but new declarations.)
>>>
>>> Stephen, I was looking at binutils and realized this patch has not
>>> been committed yet. I only committed the GCC portion, plugin-api.h.
>>>
>>> Thanks
>>> Sri
>>>
>>>>
>>>> -cary