blob: 7bde45b80c6d2ed79bc93ceb0d3e6b6fcfd93aae [file] [log] [blame]
# Copyright Microsoft and CHERIoT Contributors.
# SPDX-License-Identifier: MIT
SECTIONS
{
. = 0;
.compartment_export_table : ALIGN(8)
{
# Space for the compartment's PCC and GDC
. = . + 16;
# And no compartment error handler. See the
# compartment_export_table section in sdk/compartment.ldscript
# and errorHandler in the sdk/core/switcher
LONG(-1);
# Array of compartment exports
*(.compartment_exports);
}
# Lay out the code. We ensure that the three capabilities that are used
# for scanning memory are provided.
.text :
{
HIDDEN(__compartment_pcc_start = .);
*(.text .text.*);
*(.data.rel.ro);
*(.rodata .rodata.*);
}
# Lay out all of the globals.
.data :
{
*(.data .data.*);
*(.sdata .sdata.*);
*(.bss .bss.*);
*(.sbss .sbss.*);
}
# Throw some stuff away that we don't need.
/DISCARD/ :
{
*(.comment);
}
}