| /* | |
| * Copyright (c) 2018, ARM Limited and Contributors. All rights reserved. | |
| * | |
| * SPDX-License-Identifier: BSD-3-Clause | |
| */ | |
| .globl rom_lib_init | |
| .extern __DATA_RAM_START__, __DATA_ROM_START__, __DATA_SIZE__ | |
| .extern memset, memcpy | |
| rom_lib_init: | |
| cmp w0, #1 | |
| mov w0, #0 | |
| b.le 1f | |
| ret | |
| 1: stp x29, x30, [sp, #-16]! | |
| adrp x0, __DATA_RAM_START__ | |
| ldr x1,= __DATA_ROM_START__ | |
| ldr x2, =__DATA_SIZE__ | |
| bl memcpy | |
| ldr x0, =__BSS_START__ | |
| mov x1, #0 | |
| ldr x2, =__BSS_SIZE__ | |
| bl memset | |
| ldp x29, x30, [sp], #16 | |
| mov w0, #1 | |
| ret |