diff options
author | Kévin Petit <kevin.petit@arm.com> | 2015-03-24 14:03:57 +0000 |
---|---|---|
committer | Kévin Petit <kevin.petit@arm.com> | 2015-04-08 13:02:59 +0100 |
commit | 8b779620d3bad024b83650ecfeaafd7b3ae26ccf (patch) | |
tree | 345141826138671577efda8e8b8426dd3f039916 /bl31/aarch64/context.S | |
parent | cd319142464907e3760129f3e245a325300eb3c3 (diff) |
Add support to indicate size and end of assembly functions
In order for the symbol table in the ELF file to contain the size of
functions written in assembly, it is necessary to report it to the
assembler using the .size directive.
To fulfil the above requirements, this patch introduces an 'endfunc'
macro which contains the .endfunc and .size directives. It also adds
a .func directive to the 'func' assembler macro.
The .func/.endfunc have been used so the assembler can fail if
endfunc is omitted.
Fixes ARM-Software/tf-issues#295
Change-Id: If8cb331b03d7f38fe7e3694d4de26f1075b278fc
Signed-off-by: Kévin Petit <kevin.petit@arm.com>
Diffstat (limited to 'bl31/aarch64/context.S')
-rw-r--r-- | bl31/aarch64/context.S | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/bl31/aarch64/context.S b/bl31/aarch64/context.S index b127480a..70a1e5d6 100644 --- a/bl31/aarch64/context.S +++ b/bl31/aarch64/context.S @@ -117,6 +117,7 @@ func el1_sysregs_context_save str x15, [x0, #CTX_FP_FPEXC32_EL2] ret +endfunc el1_sysregs_context_save /* ----------------------------------------------------- * The following function strictly follows the AArch64 @@ -205,6 +206,7 @@ func el1_sysregs_context_restore /* No explict ISB required here as ERET covers it */ ret +endfunc el1_sysregs_context_restore /* ----------------------------------------------------- * The following function follows the aapcs_64 strictly @@ -249,6 +251,7 @@ func fpregs_context_save str x10, [x0, #CTX_FP_FPCR] ret +endfunc fpregs_context_save /* ----------------------------------------------------- * The following function follows the aapcs_64 strictly @@ -298,4 +301,5 @@ func fpregs_context_restore */ ret +endfunc fpregs_context_restore #endif /* CTX_INCLUDE_FPREGS */ |