This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: PATCH: PR ld/4409: --unresolved-symbols=ignore-all issues on ia64
On Thu, May 10, 2007 at 02:15:39PM +0930, Alan Modra wrote:
> On Wed, May 09, 2007 at 09:14:20PM -0700, H. J. Lu wrote:
> > When an error from RELOC_FOR_GLOBAL_SYMBOL in executable is ignored
> > on ia64, we shouldn't continue since unresolved symbol in executable
> > is fatal on ia64. This patch fixes it.
> >
>
> This would have been a lot less typing if you'd just changed
> elfxx-ia64.c. The following does the same as your patch, I think.
>
> Index: bfd/elfxx-ia64.c
> ===================================================================
> RCS file: /cvs/src/src/bfd/elfxx-ia64.c,v
> retrieving revision 1.198
> diff -u -p -r1.198 elfxx-ia64.c
> --- bfd/elfxx-ia64.c 26 Apr 2007 14:46:57 -0000 1.198
> +++ bfd/elfxx-ia64.c 10 May 2007 04:39:41 -0000
> @@ -4672,7 +4672,9 @@ elfNN_ia64_relocate_section (output_bfd,
>
> if (h->root.type == bfd_link_hash_undefweak)
> undef_weak_ref = TRUE;
> - else if (warned)
> + else if (h->root.type != bfd_link_hash_defined
> + && h->root.type != bfd_link_hash_defweak
> + && (warned || info->executable))
> continue;
> }
>
They aren't the same for symbols with non-default visibility. We can
certainly copy the same logic to elfNN_ia64_relocate_section. But is
this necessary given that I already did the typing :-(?
H.J.