summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKeith Walker <kwalker@arm.com>2015-08-24 10:11:14 +0000
committerKeith Walker <kwalker@arm.com>2015-08-24 10:11:14 +0000
commit71ad47f81fb33bbbf0a0713006691ed0c0550b3f (patch)
treec8f3876588109fb3f2fd059c9375bf9765992626
parent284f2bffc9bc5bc3047243d9c929e40b25d233b2 (diff)
downloadbcm5719-llvm-71ad47f81fb33bbbf0a0713006691ed0c0550b3f.tar.gz
bcm5719-llvm-71ad47f81fb33bbbf0a0713006691ed0c0550b3f.zip
[AArch64] Define the macro __ARM_FP16_ARGS
The ACLE (ARM C Language Extensions) 2.0 defines that the predefined macro __ARM_FP16_ARGS should be defined if __fp16 can be used as an argument and result. The support for __fp16 to be used as an argument and result is already implemented for AArch64 so this change is just adding the missing macro. Differential Revision: http://reviews.llvm.org/D12240 llvm-svn: 245833
-rw-r--r--clang/lib/Basic/Targets.cpp1
-rw-r--r--clang/test/Preprocessor/aarch64-target-features.c1
2 files changed, 2 insertions, 0 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp
index dba564fb0e1..ae300214ecf 100644
--- a/clang/lib/Basic/Targets.cpp
+++ b/clang/lib/Basic/Targets.cpp
@@ -5176,6 +5176,7 @@ public:
// PCS specifies this for SysV variants, which is all we support. Other ABIs
// may choose __ARM_FP16_FORMAT_ALTERNATIVE.
Builder.defineMacro("__ARM_FP16_FORMAT_IEEE");
+ Builder.defineMacro("__ARM_FP16_ARGS");
if (Opts.FastMath || Opts.FiniteMathOnly)
Builder.defineMacro("__ARM_FP_FAST");
diff --git a/clang/test/Preprocessor/aarch64-target-features.c b/clang/test/Preprocessor/aarch64-target-features.c
index 26f1d9d1627..4cd94ffddf0 100644
--- a/clang/test/Preprocessor/aarch64-target-features.c
+++ b/clang/test/Preprocessor/aarch64-target-features.c
@@ -19,6 +19,7 @@
// CHECK: __ARM_FEATURE_NUMERIC_MAXMIN 1
// CHECK: __ARM_FEATURE_UNALIGNED 1
// CHECK: __ARM_FP 0xe
+// CHECK: __ARM_FP16_ARGS 1
// CHECK: __ARM_FP16_FORMAT_IEEE 1
// CHECK-NOT: __ARM_FP_FAST 1
// CHECK: __ARM_FP_FENV_ROUNDING 1
OpenPOWER on IntegriCloud