This is the mail archive of the binutils@sourceware.org mailing list for the binutils 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: 2 stage BFD linker for LTO plugin


On Tue, Dec 7, 2010 at 12:12 PM, H.J. Lu <hjl.tools@gmail.com> wrote:
> On Mon, Dec 6, 2010 at 9:20 AM, H.J. Lu <hjl.tools@gmail.com> wrote:
>> On Mon, Dec 6, 2010 at 9:23 AM, Dave Korn <dave.korn.cygwin@gmail.com> wrote:
>>> On 06/12/2010 02:20, H.J. Lu wrote:
>>>
>>>>>>>> BTW, the new linker passed bootstrap-lto with all default languages.
>>>>>>>> I am planning to include this patch in the next Linux binutils.
>>>>>>>>
>>>>>>> I missed the IR object in an archive:
>>>>>>>
>>>>>>> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42690#c34
>>>>>>>
>>>>>>> This updated patch fixed it. ?OK for trunk?
>>>>>>>
>>>>>> We shouldn't clear SEC_EXCLUDE if BFD_PLUGIN is set:
>>>>>>
>>>>>> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42690#c38
>>>>>>
>>>>>> This updated patch fixed it. ?OK for trunk?
>>>>>>
>>>>> It turns out that my patch also fixes:
>>>>>
>>>>> http://sourceware.org/bugzilla/show_bug.cgi?id=12277
>>>>>
>>>>
>>>> Updated patch, adjusted for plugin ELF symbol visibility bug fix.
>>>> OK for trunk?
>>>
>>> ?Well, I reckon this patch is great (but don't have the approval rights).
>>> It's passed an lto-bootstrap of gcc on i686-pc-cygwin and the tests are well
>>> underway without anything abnormal showing up.
>>>
>>>> + ? ? ? /* Free the old already linked table and create a new one. ?*/
>>>> + ? ? ? bfd_section_already_linked_table_free ();
>>>> + ? ? ? if (!bfd_section_already_linked_table_init ())
>>>> + ? ? ? ? einfo (_("%P%F: Failed to create hash table\n"));
>>>> +
>>>> + ? ? ? /* Free the old hash table and create a new one. ?*/
>>>> + ? ? ? bfd_link_hash_table_free (link_info.output_bfd,
>>>> + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? link_info.hash);
>>>> + ? ? ? link_info.hash
>>>> + ? ? ? ? = bfd_link_hash_table_create (link_info.output_bfd);
>>>> + ? ? ? if (link_info.hash == NULL)
>>>> + ? ? ? ? einfo (_("%P%F: can not create hash table: %E\n"));
>>>
>>> ?If I had known that there was really this little stored state to be unwound
>>> and regenerated, I would have wanted to do it this way in the first place.
>>>
>>>> +typedef struct cmdlin_header_struct
>>>
>>> ?Typo there.
>>
>> Fixed.
>>
>
> cmdline_set_next_claimed_output took the address of an stack
> variable:
>
> http://www.sourceware.org/bugzilla/show_bug.cgi?id=12293
>
> Fixed in this updated patch.
>

I fixed:

http://sourceware.org/bugzilla/show_bug.cgi?id=12295

on hjl/lto branch with commit

c7374491324a96819584e0692aaf9c8aab6f2241

http://git.kernel.org/?p=devel/binutils/hjl/x86.git;a=summary


H.J.
-- 
H.J.


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