AArch32: Add `memcpy4` function in assembly
authorYatharth Kochar <yatharth.kochar@arm.com>
Wed, 28 Sep 2016 10:00:05 +0000 (11:00 +0100)
committerYatharth Kochar <yatharth.kochar@arm.com>
Wed, 28 Sep 2016 13:03:47 +0000 (14:03 +0100)
commit9c1dceb106474966211a3782f8e89e195b4c079c
treefdac31949604c93e82fd9a535c07bce5baa9a826
parentbfd925139fdbc2e87979849907b34843aa326994
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
include/common/aarch32/el3_common_macros.S
lib/aarch32/misc_helpers.S