libc: armclang: Implement compiler printf symbols

armclang replaces calls to printf by calls to one of the symbols
__0printf, __1printf or __2printf. This patch adds new functions with
these names that internally call printf so that the Trusted Firmware can
be compiled with this compiler.

Change-Id: I06a0e3e5001232fe5b2577615666ddd66e81eef0
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
This commit is contained in:
Antonio Nino Diaz 2018-08-16 15:42:44 +01:00
parent 39b6cc66d6
commit 8422a8406b
3 changed files with 42 additions and 1 deletions

View File

@ -211,6 +211,10 @@ BL_COMMON_SOURCES += common/bl_common.c \
plat/common/${ARCH}/platform_helpers.S \
${COMPILER_RT_SRCS}
ifeq ($(notdir $(CC)),armclang)
BL_COMMON_SOURCES += lib/${ARCH}/armclang_printf.S
endif
INCLUDES += -Iinclude \
-Iinclude/bl1 \
-Iinclude/bl2 \
@ -239,7 +243,6 @@ INCLUDES += -Iinclude \
${SPD_INCLUDES} \
-Iinclude/tools_share
################################################################################
# Generic definitions
################################################################################

View File

@ -0,0 +1,19 @@
/*
* Copyright (c) 2018, ARM Limited and Contributors. All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
#include <asm_macros.S>
/* Symbols needed by armclang */
.globl __0printf
.globl __1printf
.globl __2printf
func __0printf
__1printf:
__2printf:
b printf
endfunc __0printf

View File

@ -0,0 +1,19 @@
/*
* Copyright (c) 2018, ARM Limited and Contributors. All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
#include <asm_macros.S>
/* Symbols needed by armclang */
.globl __0printf
.globl __1printf
.globl __2printf
func __0printf
__1printf:
__2printf:
b printf
endfunc __0printf