From 0af6d64df3dc2633058ad481fb5c64c09945cf60 Mon Sep 17 00:00:00 2001 From: Harry Liebel Date: Fri, 20 Dec 2013 18:51:12 +0000 Subject: [PATCH] Do not let GCC use built-in functions In order to reduce the software dependency on the compiler, the project is now compiled with the '-ffreestanding' flag. This is to prevent GCC from replacing functions with more optimised versions. An example is where GCC replaces a simple printf() with a puts(). Change-Id: I1973fe6957cd708e8432a0039af9d50e037bd884 --- Makefile | 5 +++-- docs/change-log.md | 3 +++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 544af731..d3951ead 100644 --- a/Makefile +++ b/Makefile @@ -96,8 +96,9 @@ INCLUDES += -Ilib/include/ -Iinclude/aarch64/ -Iinclude/ \ -Iarch/system/gic -Icommon/psci \ -Iinclude/stdlib -Iinclude/stdlib/sys -ASFLAGS += -nostdinc -Wa,--fatal-warnings -D__ASSEMBLY__ ${INCLUDES} -CFLAGS := -nostdinc -Wall -Werror -std=c99 -c -Os \ +ASFLAGS += -nostdinc -ffreestanding -Wa,--fatal-warnings \ + -D__ASSEMBLY__ ${INCLUDES} +CFLAGS := -nostdinc -ffreestanding -Wall -Werror -std=c99 -c -Os \ -DDEBUG=${DEBUG} ${INCLUDES} ${CFLAGS} LDFLAGS += --fatal-warnings -O1 diff --git a/docs/change-log.md b/docs/change-log.md index 08d18545..b400ac7a 100644 --- a/docs/change-log.md +++ b/docs/change-log.md @@ -82,6 +82,9 @@ Detailed changes since last release Implementations for `putchar()` and `strchr()` were added to the local C library. +* GCC compiler built-in function support has been disabled in order to improve + compiler independence. + ARM Trusted Firmware - version 0.2 ================================== -- 2.30.2