This is the mail archive of the binutils@sources.redhat.com 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: ld is broken on Linux/alpha


On Fri, Nov 23, 2001 at 10:41:18PM -0800, H . J . Lu wrote:
> On Fri, Nov 23, 2001 at 10:00:41PM -0800, H . J . Lu wrote:
> > On Fri, Nov 23, 2001 at 05:37:28PM -0800, H . J . Lu wrote:
> > > Today's ld from CVS is broken on Linux/alpha. I got many
> > > 
> > > child killed: segmentation violation
> > > FAIL: visibility (hidden_normal) (non PIC, load offset)
> > > 
> > 
> > Hi Jakub,
> > 
> > Your patch
> > 
> > http://sources.redhat.com/ml/binutils/2001-11/msg00580.html
> > 
> > breaks Linux/alpha. I got
> > 
> > 	while (gotent->gotobj != gotobj || gotent->addend != addend)
> > 	  gotent = gotent->next;
> > 
> > with gotent == NULL. That is
> > 
> > (gdb) p/x addend
> > $63 = 0xffffffffffffffe9
> > (gdb) p/x gotent->addend
> > $59 = 0x87
> > (gdb) gotent->gotobj
> > $60 = 0x1200f74e0
> > (gdb) p/x gotobj
> > $61 = 0x1200f74e0
> > (gdb) p h
> > $62 = (struct alpha_elf_link_hash_entry *) 0x0
> > 
> > Could you please fix it?
> > 
> > Thanks.
> > 
> > 
> 
> This patch makes "make check" pass on Linux/alpha. I have no ideas if
> it is correct at all. I suspect Linux/alpha may not be the only
> platform which is broken by that patch. The main issue is you will only
> see the problem if your gcc supports the SHF_MERGE sections. That means
> we may not know there is a problem even if it exists.
> 
> 

Hi Jakub,

Could you please double check all ELF targets which use rel->r_addend
after _bfd_elf_rela_local_sym is called in xxx_xxx_relocate_section?

Thanks.



H.J.


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