aboutsummaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorHarry Liebel <Harry.Liebel@arm.com>2014-01-14 18:11:48 +0000
committerDan Handley <dan.handley@arm.com>2014-01-17 10:27:53 +0000
commit4f6036834fb7f53e3002c37af1c9d0681e8ef675 (patch)
treeaf1bdd052679342b63b7b7a0d44cb51d34dc1e19 /Makefile
parente83b0cadc67882c1ba7f430d16dab80c9b3a0228 (diff)
downloadtrusted-firmware-a-4f6036834fb7f53e3002c37af1c9d0681e8ef675.tar.gz
Do not trap access to floating point registers
Traps when accessing architectural features are disabled by clearing bits in CPTR_EL3 during early boot, including accesses to floating point registers. The value of this register was previously undetermined, causing unwanted traps to EL3. Future EL3 code (for example, context save/restore code) may use floating point registers, although they are not used by current code. Also, the '-mgeneral-regs-only' flag is enabled in the GCC settings to prevent generation of code that uses floating point registers. Change-Id: I9a03675f6387bbbee81a6f2c9ccf81150db03747
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile7
1 files changed, 4 insertions, 3 deletions
diff --git a/Makefile b/Makefile
index 1f009a5153..4e883082c0 100644
--- a/Makefile
+++ b/Makefile
@@ -97,9 +97,10 @@ INCLUDES += -Ilib/include/ -Iinclude/aarch64/ -Iinclude/ \
-Iinclude/stdlib -Iinclude/stdlib/sys
ASFLAGS += -nostdinc -ffreestanding -Wa,--fatal-warnings \
- -D__ASSEMBLY__ ${INCLUDES}
-CFLAGS := -nostdinc -pedantic -ffreestanding -Wall -Werror \
- -std=c99 -c -Os -DDEBUG=${DEBUG} ${INCLUDES} ${CFLAGS}
+ -mgeneral-regs-only -D__ASSEMBLY__ ${INCLUDES}
+CFLAGS := -nostdinc -pedantic -ffreestanding -Wall \
+ -Werror -mgeneral-regs-only -std=c99 -c -Os \
+ -DDEBUG=${DEBUG} ${INCLUDES} ${CFLAGS}
LDFLAGS += --fatal-warnings -O1
BL1_LDFLAGS := -Map=${BL1_MAPFILE} --script ${BL1_LINKERFILE} --entry=${BL1_ENTRY_POINT}