diff options
author | midipix <writeonce@midipix.org> | 2015-04-25 10:14:19 -0400 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2015-04-25 10:14:19 -0400 |
commit | 5085e91a323072e923f46bad4199e6abd9d12ae7 (patch) | |
tree | 1d007a1140fb6049186e0749a41f615060e834ab /crt/nt64 | |
parent | 0f5685a2ffe65b6c6154f5500a26983852eaf1f3 (diff) | |
download | mmglue-5085e91a323072e923f46bad4199e6abd9d12ae7.tar.bz2 mmglue-5085e91a323072e923f46bad4199e6abd9d12ae7.tar.xz |
complete/fix support of ctors/dtors and tls.
+ do not build libc.so with -DSHARED for the midipix targets.
+ provide surrogate init/fini arrays that allow invocation of the
ctors/dtors iteration routines.
+ provide a builtin tls for the first thread.
+ update __copy_tls to match the layout of the simplified struct __tls.
signed-off by Z. Gilboa; see copying.midipix (9cd0746c) for additional information.
Diffstat (limited to 'crt/nt64')
-rw-r--r-- | crt/nt64/crti.s | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/crt/nt64/crti.s b/crt/nt64/crti.s index 14fdd90..44ecc61 100644 --- a/crt/nt64/crti.s +++ b/crt/nt64/crti.s @@ -5,13 +5,11 @@ _pei386_runtime_relocator: .globl _init _init: - call .init - ret + jmp .init .globl _fini _fini: - call .fini - ret + jmp .fini .section .init xor %rax,%rax @@ -39,3 +37,5 @@ _fini: .long 1 .long 0 .long 0 + .quad __CTOR_LIST__ + .quad __DTOR_LIST__ |