summaryrefslogtreecommitdiff
path: root/lib/libcompiler_rt/arm/aeabi_cfcmpeq_check_nan.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libcompiler_rt/arm/aeabi_cfcmpeq_check_nan.c')
-rw-r--r--lib/libcompiler_rt/arm/aeabi_cfcmpeq_check_nan.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/libcompiler_rt/arm/aeabi_cfcmpeq_check_nan.c b/lib/libcompiler_rt/arm/aeabi_cfcmpeq_check_nan.c
new file mode 100644
index 00000000000..992e31fbd8d
--- /dev/null
+++ b/lib/libcompiler_rt/arm/aeabi_cfcmpeq_check_nan.c
@@ -0,0 +1,16 @@
+//===-- lib/arm/aeabi_cfcmpeq_helper.c - Helper for cdcmpeq ---------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is dual licensed under the MIT and the University of Illinois Open
+// Source Licenses. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#include <stdint.h>
+
+__attribute__((pcs("aapcs")))
+__attribute__((visibility("hidden")))
+int __aeabi_cfcmpeq_check_nan(float a, float b) {
+ return __builtin_isnan(a) || __builtin_isnan(b);
+}