Update to Unicode 15.1.0 [BZ #30854]
[glibc.git] / sysdeps / generic / crti.S
blob82d6dc0d9132ffcb889317880f400200b707be9f
1 /* Dummy crti file.
3    In this configuration, crti.o and crtn.o are both empty because the
4    .init_array/.fini_array sections are used exclusively.
6    Older ports cannot use this because even if the linker used to
7    build libc itself has .init_array support, we don't want to produce
8    a crt[in].o that presume a linker that new will be used to link
9    other things later.
11    But new configurations without compatibility concerns for
12    toolchains without .init_array support can use this to avoid the
13    superfluous .init and .fini boilerplate code.  */
15 #include <elf-initfini.h>
17 #if ELF_INITFINI
18 # error Cannot use default crti.S because it lacks _init code
19 #endif
21 #ifdef PREINIT_FUNCTION
23 # if PREINIT_FUNCTION_WEAK
24 #  error PREINIT_FUNCTION_WEAK is unsupported
25 # endif
27 /* This arranges for PREINIT_FUNCTION to be called upon loading a library that
28    contains crti.o.  */
30         .section .init_array,"a",%init_array
31         .dc.a PREINIT_FUNCTION
33 #endif