[gcc r10-6009] [PATCH, GCC/ARM, 1/10] Fix -mcmse check in libgcc
Mihail Ionescu
mionescu@gcc.gnu.org
Thu Jan 16 15:15:00 GMT 2020
https://gcc.gnu.org/g:e953433f089b8276c0445ab538bbf655ef6c8c97
commit r10-6009-ge953433f089b8276c0445ab538bbf655ef6c8c97
Author: Mihail Ionescu <mihail.ionescu@arm.com>
Date: Tue Jan 14 17:47:39 2020 +0000
[PATCH, GCC/ARM, 1/10] Fix -mcmse check in libgcc
This patch is part of a patch series to add support for Armv8.1-M
Mainline Security Extensions architecture.
Code to detect whether cmse.c can be buit with -mcmse checks the output
of host GCC when invoked with -mcmse. However, an error from the
compiler does not prevent some minimal output so this always holds true.
2020-01-16 Mihail-Calin Ionescu <mihail.ionescu@arm.com>
2020-01-16 Thomas Preud'homme <thomas.preudhomme@arm.com>
* config/arm/t-arm: Check return value of gcc rather than lack of
output.
Diff:
---
libgcc/ChangeLog | 6 ++++++
libgcc/config/arm/t-arm | 2 +-
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
index 06903c2..323e80d 100644
--- a/libgcc/ChangeLog
+++ b/libgcc/ChangeLog
@@ -1,3 +1,9 @@
+2020-01-16 Mihail-Calin Ionescu <mihail.ionescu@arm.com>
+2020-01-16 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ * config/arm/t-arm: Check return value of gcc rather than lack of
+ output.
+
2020-01-14 Georg-Johann Lay <avr@gjlay.de>
* config/avr/lib1funcs.S (skip): Simplify.
diff --git a/libgcc/config/arm/t-arm b/libgcc/config/arm/t-arm
index 274bf2a..f2b927f 100644
--- a/libgcc/config/arm/t-arm
+++ b/libgcc/config/arm/t-arm
@@ -3,7 +3,7 @@ LIB1ASMFUNCS = _thumb1_case_sqi _thumb1_case_uqi _thumb1_case_shi \
_thumb1_case_uhi _thumb1_case_si _speculation_barrier
HAVE_CMSE:=$(findstring __ARM_FEATURE_CMSE,$(shell $(gcc_compile_bare) -dM -E - </dev/null))
-ifneq ($(shell $(gcc_compile_bare) -E -mcmse - </dev/null 2>/dev/null),)
+ifeq ($(shell $(gcc_compile_bare) -E -mcmse - </dev/null >/dev/null 2>/dev/null; echo $?),0)
CMSE_OPTS:=-mcmse
endif
More information about the Gcc-cvs
mailing list