public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
From: "H . J . Lu" <hjl@lucon.org>
To: Alan Modra <amodra@bigpond.net.au>
Cc: binutils@sourceware.cygnus.com
Subject: Re: binutils 2.11.92.0.6 (Re: binutils 2.11.92.0.5 is broken)
Date: Sun, 14 Oct 2001 22:42:00 -0000	[thread overview]
Message-ID: <20011014224046.A1513@lucon.org> (raw)
In-Reply-To: <20011015093317.B1015@bubble.sa.bigpond.net.au>

On Mon, Oct 15, 2001 at 09:33:17AM +0930, Alan Modra wrote:
> > > This patch
> > > 
> > > http://sources.redhat.com/ml/binutils/2001-10/msg00035.html
> > > 
> > > is incomplete. You cannot do any backend processing when
> 
> Err, yes.  Thanks for looking into it, HJ.  I've been away this weekend,
> which is why it appears that I've been ignoring the problem.

It is ok. We are on top of it now.

> 
> 
> > Index: elf32-hppa.c
> > ===================================================================
> > RCS file: /work/cvs/gnu/binutils/bfd/elf32-hppa.c,v
> > retrieving revision 1.41
> > diff -u -p -r1.41 elf32-hppa.c
> > --- elf32-hppa.c	2001/10/03 15:55:57	1.41
> > +++ elf32-hppa.c	2001/10/14 06:43:23
> > @@ -1147,7 +1147,7 @@ elf32_hppa_copy_indirect_symbol (dir, in
> >        edir->dyn_relocs = eind->dyn_relocs;
> >        eind->dyn_relocs = NULL;
> >      }
> > -  else if (eind->dyn_relocs != NULL)
> > +  else if (dir != ind->weakdef && eind->dyn_relocs != NULL)
> 
> I suspect this is not the correct fix.  dyn_relocs is being used to count
> relocs, and probably what should happen is something like
> 
>   else if (eind->dyn_relocs != NULL)
>     {
>       struct elf32_hppa_dyn_reloc_entry *p;
> 
>       if (edir != eind->elf.weakdef)
> 	abort ();
> 
>       /* Add reloc counts against the weak sym to the strong sym list.
> 	 Entries on the eind list should have a different p->sec from
> 	 any on the dir list, so we don't need to merge entries.  */
>       for (p = eind->dyn_relocs; p->next != NULL; p = p->next)
> 	;
>       p->next = edir->dyn_relocs;
>       edir->dyn_relocs = eind->dyn_relocs;
>       eind->dyn_relocs = NULL;
>     }
> 
> Untested as yet, because I don't have a testcase.  I'll see if I can
> dream one up.

I am not sure. Feel free to experiment. Please make sure you at least
can build telnetd on Linux/x86.

> 
> > --- elflink.h	2001/10/05 20:32:13	1.82
> > +++ elflink.h	2001/10/11 18:15:44	1.83
> > +     As above, we permit a non-weak definition in a shared object to
> > +     override a weak definition in a regular object.  */
> 
> I don't disagree with this change, but has this been discussed sufficiently
> here and on the glibc list?

That is to back out my own change to elf_merge_symbol in binutils
2.11.92.0.5 to fix a mips linker bug. But I have a better fix. See

http://sources.redhat.com/ml/binutils/2001-10/msg00203.html

Thanks.


H.J.

  reply	other threads:[~2001-10-14 22:42 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <200110131452.f9DEq7Q0032358@dandelion.com>
2001-10-13 19:01 ` binutils 2.11.92.0.5 is broke (Re: Binutils Bug) H . J . Lu
2001-10-13 23:58   ` binutils 2.11.92.0.6 (Re: binutils 2.11.92.0.5 is broken) H . J . Lu
2001-10-14  0:00     ` H . J . Lu
2001-10-14 17:03     ` Alan Modra
2001-10-14 22:42       ` H . J . Lu [this message]
2001-10-15  0:15       ` Alan Modra
2001-10-15  0:50         ` H . J . Lu
2001-10-15  1:54           ` Alan Modra
2001-10-15  2:47             ` Alan Modra

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20011014224046.A1513@lucon.org \
    --to=hjl@lucon.org \
    --cc=amodra@bigpond.net.au \
    --cc=binutils@sourceware.cygnus.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).