History log of /fuchsia/zircon/third_party/ulib/musl/arch/aarch64/reloc.h
Revision Date Author Comments
# 0cd8a446 07-Aug-2018 Jake Ehrlich <jakehehrlich@google.com>

[musl] Fix alignment issues for tls on AArch64

musl had been assuming that alignment of TLS segments would
always be <= 16. This change removes use of TPOFF_K and
ensures the the offset of every tls segment is calculated
with the gap in mind. This change ensures that dso.tls.offset
is always the offset from the thread pointer itself rather
than attempting to be from the start of the tls block. This
is consistent (though backwards) with how things work on
x86-64.

Fixes ZX-1646

Test: boot/test/core/elf-tls-test
runtests in garnet
fixed nacl libc-tests in garnet

* elf-tls-test only tests the simplist access model
* it isn't clear runtests tests tls at all
* the fixed nacl libc-tests confirms that all initial-exec tests work

Change-Id: Ida3ff39a25adc7a1b5c85af7e643a44a4f748766


# 5bf4b3bf 08-Aug-2017 George Kulakowski <kulakowski@google.com>

[musl][arch] Remove various unused arch-specific macro definitions

The LDSO_ARCH name is no longer used.

CRTJMP was used on linux to jump to the entry point. We use a
different mechanism to return a function pointer and argument to _start.

Change-Id: Iad96d518f0664a74f9c780d9064439db68a0f3b9


# 11dc3eaa 10-May-2017 Roland McGrath <mcgrathr@google.com>

[ulib][musl][ldso] Move entry point code into .S file

A raw .S file is better than raw assembly in top-level asm() in a .c file.
This also makes the symbol definitions and references in the assembly
visible to an LTO linker.

Change-Id: I6c0bad5a3756be8d48653d1cf65c46189d960cf2


# 59530928 19-Sep-2016 George Kulakowski <kulakowski@google.com>

[musl][format] Clang format musl

Change-Id: I9d0d2d586a6587dbedda055a3b3664296c7eb89a


# b1cfb65d 02-Aug-2016 Roland McGrath <mcgrathr@google.com>

[musl] [ldso] Make _start symbol hidden

The _start symbol used for the dynamic linker's entry point should not
be exported. Doing so causes trouble for things linked against libc.so.

Change-Id: I95b1c5a187527f3b140013438f157d68082b80b9


# d6759644 02-Aug-2016 Roland McGrath <mcgrathr@google.com>

[ulib] [musl] [ldso] Handle LD_DEBUG environment variable

This rejiggers dynamic linker startup so that the bootstrap message
buffer stays on the dynamic linker's initial stack and can be used
to hold environment strings, but then is popped before jumping to
the user entry point. This reenables the latent LD_PRELOAD support.
Also check the environment variable LD_DEBUG for a nonempty value;
if it's set, print all the load addresses at the end of startup.

Change-Id: Ida6dbcfe006b16a6e61b963a4395e7a990163185


# 0089bf27 18-Jul-2016 Roland McGrath <mcgrathr@google.com>

[musl] Dynamic linking support

This enables the build of musl's libc.so, which is also the dynamic linker.

Change-Id: I26de0d8cc410667aa346c1138b327777f64bd969


# 489c6e3f 17-Jun-2016 George Kulakowski <kulakowski@google.com>

[musl] clang format musl

Change-Id: I3bc6ab7655410514691cd07f08454f3afd41d9b3


# 53b9e1c8 15-Jun-2016 The Fuchsia Authors <authors@fuchsia.local>

[magenta] Initial commit