summaryrefslogtreecommitdiff
path: root/bl32
diff options
context:
space:
mode:
authorChris Kay <chris.kay@arm.com>2023-01-26 18:31:52 +0000
committerChris Kay <chris.kay@arm.com>2023-04-17 17:15:35 +0100
commit3cad06b351ca6f413517c2b1cc4cb55c7df556c4 (patch)
treeb26b21d54b8afc538721100678fff7367c50ef36 /bl32
parent3d745235127c12a7f6538d8674649e06239191d0 (diff)
build(tsp): sort sections by alignment by default
This change forces LD to sort all input sections by alignment when allocating them within an output section. This is done in some places explicitly in the linker scripts today, but this makes sure we don't miss any easy targets. Change-Id: Id702a2a572f2b43c77d53634ddc64b0220d2560b Signed-off-by: Chris Kay <chris.kay@arm.com>
Diffstat (limited to 'bl32')
-rw-r--r--bl32/tsp/tsp.mk6
1 files changed, 6 insertions, 0 deletions
diff --git a/bl32/tsp/tsp.mk b/bl32/tsp/tsp.mk
index cfffbdbed..4c1813118 100644
--- a/bl32/tsp/tsp.mk
+++ b/bl32/tsp/tsp.mk
@@ -24,6 +24,12 @@ BL32_SOURCES += bl32/tsp/aarch64/tsp_entrypoint.S \
BL32_DEFAULT_LINKER_SCRIPT_SOURCE := bl32/tsp/tsp.ld.S
+ifneq ($(findstring gcc,$(notdir $(LD))),)
+ BL32_LDFLAGS += -Wl,--sort-section=alignment
+else ifneq ($(findstring ld,$(notdir $(LD))),)
+ BL32_LDFLAGS += --sort-section=alignment
+endif
+
# This flag determines if the TSPD initializes BL32 in tspd_init() (synchronous
# method) or configures BL31 to pass control to BL32 instead of BL33
# (asynchronous method).