summary refs log tree commit diff
path: root/sysdeps/init_array/crti.S
Commit message (Collapse)AuthorAgeFilesLines
* Introduce <elf-initfini.h> and ELF_INITFINI for all architecturesFlorian Weimer2020-02-181-27/+0
| | | | | | | | | | | | | | | | This supersedes the init_array sysdeps directory. It allows us to check for ELF_INITFINI in both C and assembler code, and skip DT_INIT and DT_FINI processing completely on newer architectures. A new header file is needed because <dl-machine.h> is incompatible with assembler code. <sysdep.h> is compatible with assembler code, but it cannot be included in all assembler files because on some architectures, it redefines register names, and some assembler files conflict with that. <elf-initfini.h> is replicated for legacy architectures which need DT_INIT/DT_FINI support. New architectures follow the generic default and disable it.
* sysdeps/init_array: Add PREINIT_FUNCTION to crti.SPalmer Dabbelt2018-01-291-0/+14
| | | | | | | | | | | | | The RISC-V port contains a crti.S that simply contains a link to PREINIT_FUNCTION (when defined). As this should be entirely generic, Joseph Myers suggested that we update the generic init_array version to contain this. Since RISC-V is the only user of init_array this won't break any existing ports. 2018-01-29 Palmer Dabbelt <palmer@sifive.com> * sysdeps/init_array/crti.S (.section .init_array): Add PREINIT_FUNCTION when defined.
* Add sysdeps/init_array to produce empty crt[in].o and use .preinit_array for ↵Roland McGrath2013-03-121-0/+13
gcrt1.o