arm-trusted-firmware/include/lib
Soby Mathew f1722b693d PIE: Use PC relative adrp/adr for symbol reference
This patch fixes up the AArch64 assembly code to use
adrp/adr instructions instead of ldr instruction for
reference to symbols. This allows these assembly
sequences to be Position Independant. Note that the
the reference to sizes have been replaced with
calculation of size at runtime. This is because size
is a constant value and does not depend on execution
address and using PC relative instructions for loading
them makes them relative to execution address. Also
we cannot use `ldr` instruction to load size as it
generates a dynamic relocation entry which must *not*
be fixed up and it is difficult for a dynamic loader
to differentiate which entries need to be skipped.

Change-Id: I8bf4ed5c58a9703629e5498a27624500ef40a836
Signed-off-by: Soby Mathew <soby.mathew@arm.com>
2018-10-29 09:54:31 +00:00
..
aarch32 Remove some MISRA defects in common code 2018-10-04 15:43:52 +01:00
aarch64 AArch64: Enable lower ELs to use pointer authentication 2018-10-16 08:31:13 +01:00
cpus plat/arm: relocate the jump_if_cpu_midr macro. 2018-10-15 13:08:52 +05:30
el3_runtime context_mgmt: Remove deprecated interfaces 2018-09-28 15:31:53 +01:00
extensions libc: Fix all includes in codebase 2018-08-22 10:26:05 +01:00
libc libc: Integrate strrchr in libc 2018-10-23 18:27:45 +01:00
libfdt libfdt: Import version v1.4.7 2018-10-23 18:34:40 +01:00
pmf PIE: Use PC relative adrp/adr for symbol reference 2018-10-29 09:54:31 +00:00
psci PSCI: Remove deprecated file plat_psci_common.c 2018-09-28 15:31:52 +01:00
xlat_tables xlat: Fix compatibility between v1 and v2 2018-10-26 14:55:30 +01:00
zlib zlib: add gunzip() support 2018-02-02 00:18:54 +09:00
bakery_lock.h libc: Fix all includes in codebase 2018-08-22 10:26:05 +01:00
cassert.h libc: Fix all includes in codebase 2018-08-22 10:26:05 +01:00
coreboot.h libc: Fix all includes in codebase 2018-08-22 10:26:05 +01:00
mmio.h Use SPDX license identifiers 2017-05-03 09:39:28 +01:00
object_pool.h Introduce object pool allocator 2018-10-11 16:11:18 +02:00
optee_utils.h Add Trusted OS extra image parsing support for ARM standard platforms 2017-08-09 18:06:05 +08:00
runtime_instr.h Remove some MISRA defects in common code 2018-10-04 15:43:52 +01:00
semihosting.h Use SPDX license identifiers 2017-05-03 09:39:28 +01:00
smccc.h Remove all other deprecated interfaces and files 2018-09-28 15:31:53 +01:00
smccc_v1.h Remove all other deprecated interfaces and files 2018-09-28 15:31:53 +01:00
smccc_v2.h Add support for the SMC Calling Convention 2.0 2018-04-23 15:43:29 +01:00
spinlock.h libc: Fix all includes in codebase 2018-08-22 10:26:05 +01:00
utils.h Add helper to return reference to a symbol 2018-10-29 09:54:31 +00:00
utils_def.h Fix misra warnings in delay timer and console drivers 2018-09-25 17:49:28 +01:00