[parisc-linux] Use of the EI_OSABI field
H . J . Lu
hjl@valinux.com
Tue, 21 Nov 2000 19:11:29 -0800
On Wed, Nov 22, 2000 at 02:03:07PM +1100, Alan Modra wrote:
> On Tue, 21 Nov 2000, H . J . Lu wrote:
>
> > On Wed, Nov 22, 2000 at 11:13:29AM +1100, Alan Modra wrote:
> > >
> > > > Anyway, the ABI value is zero unless you implement ELF extensions.
> > >
> > > Exactly what is an "ELF extension"? Anything outside gABI or
> >
> > ELF extension is something whose interpretation is not documented in
> > neither gABI nor psABI. HP's old ELF is a good example since it didn't
> > implement DT_INIT/DT_FINI, but added DT_INIT_ARRARY/DT_FINI_ARRAY. A
> > normal ELF tool will have a hard time to interpret those fields and
> > their values.
>
> Neither you nor Ulrich have responded to John's point that the IA64 psABI
> states
> "The e_ident[EI_OSABI] value identifies the operating system and ABI to
> which the object is targeted"
>
> Granted, this is only in a processor specific ABI, but it does flatly
> contradict your assertions that the purpose of EI_OSABI is to flag the
> presense of ELF extensions.
>
When I was at the IA64 ABI meeting yesterday, we were looking at the
EI_OSABI issue. Everyone at the IA64 ABI meeting agreed that what
Ulrich and I had said was the correct understanding.
"The e_ident[EI_OSABI] value identifies the operating system and ABI
to which the object is targeted" just means if the e_ident[EI_OSABI]
value is not ELFOSABI_NONE, you have to look somewhere else in addition
to gABI and IA64 psABI to interpret the ELF fields/values specific to
that OS. Otherwise, gABI and IA64 psABI are sufficient.
--
H.J. Lu (hjl@valinux.com)