aboutsummaryrefslogtreecommitdiff
path: root/include/arch
diff options
context:
space:
mode:
authorJustin Chadwell <justin.chadwell@arm.com>2019-08-20 11:01:52 +0100
committerJustin Chadwell <justin.chadwell@arm.com>2019-09-11 14:15:54 +0100
commit1f4619796af5baf4b41b5723bbf708355f8597fa (patch)
tree0c1293905f4c922c53a1b2f8ea999f9da65f9841 /include/arch
parent5dbdf8e4eac1d5999f07976f9f430894b0784907 (diff)
downloadtrusted-firmware-a-1f4619796af5baf4b41b5723bbf708355f8597fa.tar.gz
Add UBSAN support and handlers
This patch adds support for the Undefined Behaviour sanitizer. There are two types of support offered - minimalistic trapping support which essentially immediately crashes on undefined behaviour and full support with full debug messages. The full support relies on ubsan.c which has been adapted from code used by OPTEE. Change-Id: I417c810f4fc43dcb56db6a6a555bfd0b38440727 Signed-off-by: Justin Chadwell <justin.chadwell@arm.com>
Diffstat (limited to 'include/arch')
-rw-r--r--include/arch/aarch64/arch.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/arch/aarch64/arch.h b/include/arch/aarch64/arch.h
index 5f84ecede5..0a26fab1ef 100644
--- a/include/arch/aarch64/arch.h
+++ b/include/arch/aarch64/arch.h
@@ -598,6 +598,8 @@
#define ESR_EC_SHIFT U(26)
#define ESR_EC_MASK U(0x3f)
#define ESR_EC_LENGTH U(6)
+#define ESR_ISS_SHIFT U(0)
+#define ESR_ISS_LENGTH U(25)
#define EC_UNKNOWN U(0x0)
#define EC_WFE_WFI U(0x1)
#define EC_AARCH32_CP15_MRC_MCR U(0x3)
@@ -624,6 +626,7 @@
#define EC_AARCH32_FP U(0x28)
#define EC_AARCH64_FP U(0x2c)
#define EC_SERROR U(0x2f)
+#define EC_BRK U(0x3c)
/*
* External Abort bit in Instruction and Data Aborts synchronous exception