aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMihail Ionescu <mihail.ionescu@arm.com>2020-01-14 17:47:39 +0000
committerMihail Ionescu <mihail.ionescu@arm.com>2020-01-16 15:09:19 +0000
commite953433f089b8276c0445ab538bbf655ef6c8c97 (patch)
tree8d7d2020ebfd028c9ea89d86818dd2010014fc80
parent66aae15b4edfe1900f501493f7946fa828a2cf49 (diff)
downloadgcc-e953433f089b8276c0445ab538bbf655ef6c8c97.zip
gcc-e953433f089b8276c0445ab538bbf655ef6c8c97.tar.gz
gcc-e953433f089b8276c0445ab538bbf655ef6c8c97.tar.bz2
[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.
-rw-r--r--libgcc/ChangeLog6
-rw-r--r--libgcc/config/arm/t-arm2
2 files changed, 7 insertions, 1 deletions
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