Add support to indicate size and end of assembly functions
authorKévin Petit <kevin.petit@arm.com>
Tue, 24 Mar 2015 14:03:57 +0000 (14:03 +0000)
committerKévin Petit <kevin.petit@arm.com>
Wed, 8 Apr 2015 12:02:59 +0000 (13:02 +0100)
commit8b779620d3bad024b83650ecfeaafd7b3ae26ccf
tree345141826138671577efda8e8b8426dd3f039916
parentcd319142464907e3760129f3e245a325300eb3c3
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>
32 files changed:
bl1/aarch64/bl1_entrypoint.S
bl2/aarch64/bl2_entrypoint.S
bl31/aarch64/bl31_entrypoint.S
bl31/aarch64/context.S
bl31/aarch64/cpu_data.S
bl31/aarch64/crash_reporting.S
bl31/aarch64/runtime_exceptions.S
bl32/tsp/aarch64/tsp_entrypoint.S
bl32/tsp/aarch64/tsp_request.S
common/aarch64/debug.S
drivers/arm/pl011/pl011_console.S
include/common/asm_macros.S
lib/aarch64/cache_helpers.S
lib/aarch64/misc_helpers.S
lib/cpus/aarch64/aem_generic.S
lib/cpus/aarch64/cortex_a53.S
lib/cpus/aarch64/cortex_a57.S
lib/cpus/aarch64/cortex_a72.S
lib/cpus/aarch64/cpu_helpers.S
lib/locks/exclusive/spinlock.S
lib/semihosting/aarch64/semihosting_call.S
plat/common/aarch64/platform_helpers.S
plat/common/aarch64/platform_mp_stack.S
plat/common/aarch64/platform_up_stack.S
plat/fvp/aarch64/fvp_helpers.S
plat/juno/aarch64/bl1_plat_helpers.S
plat/juno/aarch64/plat_helpers.S
services/spd/opteed/opteed_helpers.S
services/spd/tlkd/tlkd_helpers.S
services/spd/tspd/tspd_helpers.S
services/std_svc/psci/psci_entry.S
services/std_svc/psci/psci_helpers.S