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. Tristan, sorry, you must be sick of hearing from me by now, but I notice the branch was still labile a couple of hours ago... it would be really good if we could get HJ's patch approved and backported before you spin the release. cheers, DaveK