This is the mail archive of the
elfutils-devel@sourceware.org
mailing list for the elfutils project.
Re: run-elflint-self.sh fails on alpha
- From: Mark Wielaard <mjw at redhat dot com>
- To: elfutils-devel at lists dot fedorahosted dot org
- Date: Wed, 09 Mar 2011 16:43:49 +0100
- Subject: Re: run-elflint-self.sh fails on alpha
On Wed, 2011-03-09 at 12:03 +1100, Richard Henderson wrote:
> On 03/09/2011 11:17 AM, Roland McGrath wrote:
> >> section [ 5] '.dynsym': symbol 61: unknown bit set in st_other
> >> section [ 5] '.dynsym': symbol 64: unknown bit set in st_other
> >> section [28] '.symtab': symbol 27: unknown bit set in st_other
> >> section [28] '.symtab': symbol 34: unknown bit set in st_other
> >> section [28] '.symtab': symbol 35: unknown bit set in st_other
> >> section [28] '.symtab': symbol 36: unknown bit set in st_other
> >> section [28] '.symtab': symbol 37: unknown bit set in st_other
> >> section [28] '.symtab': symbol 38: unknown bit set in st_other
> >> section [28] '.symtab': _GLOBAL_OFFSET_TABLE_ symbol value 0x120014010 does not match .got section address 0x120014000
> >
> > These indicate either bugs in the compilation tools (probably ld) or else
> > machine-specific oddities that the elfutils backend library for alpha needs
> > to be taught to allow.
>
> The later. From <elf.h>:
>
> /* Legal values for st_other field of Elf64_Sym. */
> #define STO_ALPHA_NOPV 0x80 /* No PV required. */
> #define STO_ALPHA_STD_GPLOAD 0x88 /* PV only used for initial ldgp. */
If you are using these, should ELF64_ST_VISIBILITY be extended?
Also from <elf.h>:
/* How to extract and insert information held in the st_other field. */
#define ELF32_ST_VISIBILITY(o) ((o) & 0x03)
/* For ELF64 the definitions are the same. */
#define ELF64_ST_VISIBILITY(o) ELF32_ST_VISIBILITY (o)
That is what elflint checks here.
Cheers,
Mark