armlink can generate secure gateway veneers for symbols that are present in a Secure image. It can also output symbols to a specified output import library, when necessary.
armlink generates a secure gateway veneer when
it finds in the Secure image an entry function that has both symbols __acle_se_<entry> and <entry> pointing to the same offset in the same section.
The secure gateway veneer is a sequence of two instructions:
<entry>:
SG
B.W __acle_se_<entry>
The original symbol <entry> is changed to point to the
SG instruction of the secure gateway veneer.
You can specify an input import library and output import library with the following
command-line options:
--import_cmse_lib_in=filename.
--import_cmse_lib_out=filename.
Placement of secure gateway veneers is controlled by an input import library
and by a scatter file selection. The linker can also output addresses of secure gateways
to an output import library.
Example
The following example shows the generation of a secure gateway veneer:
Input code:
.text
entry:
__acle_se_entry:
[entry's code]
BXNS lr
Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers of your data.