summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorYatharth Kochar <yatharth.kochar@arm.com>2016-09-28 11:00:05 +0100
committerYatharth Kochar <yatharth.kochar@arm.com>2016-09-28 14:03:47 +0100
commit9c1dceb106474966211a3782f8e89e195b4c079c (patch)
treefdac31949604c93e82fd9a535c07bce5baa9a826 /include
parentbfd925139fdbc2e87979849907b34843aa326994 (diff)
AArch32: Add `memcpy4` function in assembly
At present the `el3_entrypoint_common` macro uses `memcpy` function defined in lib/stdlib/mem.c file, to copy data from ROM to RAM for BL1. Depending on the compiler being used the stack could potentially be used, in `memcpy`, for storing the local variables. Since the stack is initialized much later in `el3_entrypoint_common` it may result in unknown behaviour. This patch adds `memcpy4` function definition in assembly so that it can be used before the stack is initialized and it also replaces `memcpy` by `memcpy4` in `el3_entrypoint_common` macro, to copy data from ROM to RAM for BL1. Change-Id: I3357a0e8095f05f71bbbf0b185585d9499bfd5e0
Diffstat (limited to 'include')
-rw-r--r--include/common/aarch32/el3_common_macros.S2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/common/aarch32/el3_common_macros.S b/include/common/aarch32/el3_common_macros.S
index a572ef99..50ce952f 100644
--- a/include/common/aarch32/el3_common_macros.S
+++ b/include/common/aarch32/el3_common_macros.S
@@ -261,7 +261,7 @@
ldr r0, =__DATA_RAM_START__
ldr r1, =__DATA_ROM_START__
ldr r2, =__DATA_SIZE__
- bl memcpy
+ bl memcpy4
#endif
.endif /* _init_c_runtime */