Commit 0af6d64d authored by Harry Liebel's avatar Harry Liebel Committed by Dan Handley
Browse files

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
parent bdb774df
...@@ -96,8 +96,9 @@ INCLUDES += -Ilib/include/ -Iinclude/aarch64/ -Iinclude/ \ ...@@ -96,8 +96,9 @@ INCLUDES += -Ilib/include/ -Iinclude/aarch64/ -Iinclude/ \
-Iarch/system/gic -Icommon/psci \ -Iarch/system/gic -Icommon/psci \
-Iinclude/stdlib -Iinclude/stdlib/sys -Iinclude/stdlib -Iinclude/stdlib/sys
ASFLAGS += -nostdinc -Wa,--fatal-warnings -D__ASSEMBLY__ ${INCLUDES} ASFLAGS += -nostdinc -ffreestanding -Wa,--fatal-warnings \
CFLAGS := -nostdinc -Wall -Werror -std=c99 -c -Os \ -D__ASSEMBLY__ ${INCLUDES}
CFLAGS := -nostdinc -ffreestanding -Wall -Werror -std=c99 -c -Os \
-DDEBUG=${DEBUG} ${INCLUDES} ${CFLAGS} -DDEBUG=${DEBUG} ${INCLUDES} ${CFLAGS}
LDFLAGS += --fatal-warnings -O1 LDFLAGS += --fatal-warnings -O1
......
...@@ -82,6 +82,9 @@ Detailed changes since last release ...@@ -82,6 +82,9 @@ Detailed changes since last release
Implementations for `putchar()` and `strchr()` were added to the local C Implementations for `putchar()` and `strchr()` were added to the local C
library. library.
* GCC compiler built-in function support has been disabled in order to improve
compiler independence.
ARM Trusted Firmware - version 0.2 ARM Trusted Firmware - version 0.2
================================== ==================================
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment