[ia64-abi] Issue 82: Initializer priorities
Mike Walker
msw at eng.sun.com
Fri Mar 31 17:23:31 UTC 2000
Jim Dehnert wrote:
>
> On a system where the linker does no more than this, the C++
> implementation must do the following:
>
> In bracketing files for the link (e.g. crt1.o and crtn.o),
> emit delimiting labels in the SHT_CXX_PRIORITY_INIT section,
> and entries in INITARRAY that call an initialization
> routine that passes the labels (all STV_HIDDEN to avoid
> conflicts between DSOs). The call at the beginning would
> sort the SHT_CXX_PRIORITY_INIT vector by priority and invoke
> the negative-priority initializers, and the one at the end
> would invoke the positive-priority initializers.
I think it's worth hi-lighting that one of the main motivations
for us introducing the DT_INITARRAY & DT_FINIARRAY was so that
we could move away from the requirement of having crt*.o
modules when a final link is performed. Ideally - they are no
longer required for the ia64 development environment.
This proposal introduces a new dependency on the crt*.o modules
which we were trying to move away from. Is that an issue
for others?
I know that we at Sun are a long way from being crt'less so
it's not that big of an issue for us - but it's worth bringing up
for discussion.
_Mike_
--
---
Michael Walker Michael.Walker at Eng.Sun.Com
Linker Developer (650) 786-5744
Sun Microsystems, Inc.
901 San Antonio Road, MS MPK17-307 Palo Alto, CA 94303-4900
More information about the cxx-abi-dev
mailing list