aboutsummaryrefslogtreecommitdiff
path: root/test/Driver/denormal-fp-math.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/Driver/denormal-fp-math.c')
-rw-r--r--test/Driver/denormal-fp-math.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/test/Driver/denormal-fp-math.c b/test/Driver/denormal-fp-math.c
new file mode 100644
index 000000000000..95ff232b0d15
--- /dev/null
+++ b/test/Driver/denormal-fp-math.c
@@ -0,0 +1,12 @@
+// RUN: %clang -### -target arm-unknown-linux-gnu -c %s -fdenormal-fp-math=ieee -v 2>&1 | FileCheck -check-prefix=CHECK-IEEE %s
+// RUN: %clang -### -target arm-unknown-linux-gnu -c %s -fdenormal-fp-math=preserve-sign -v 2>&1 | FileCheck -check-prefix=CHECK-PS %s
+// RUN: %clang -### -target arm-unknown-linux-gnu -c %s -fdenormal-fp-math=positive-zero -v 2>&1 | FileCheck -check-prefix=CHECK-PZ %s
+// RUN: %clang -### -target arm-unknown-linux-gnu -c %s -fdenormal-fp-math=ieee -fno-fast-math -v 2>&1 | FileCheck -check-prefix=CHECK-NO-UNSAFE %s
+// RUN: %clang -### -target arm-unknown-linux-gnu -c %s -fdenormal-fp-math=ieee -fno-unsafe-math-optimizations -v 2>&1 | FileCheck -check-prefix=CHECK-NO-UNSAFE %s
+// RUN: not %clang -target arm-unknown-linux-gnu -c %s -fdenormal-fp-math=foo -v 2>&1 | FileCheck -check-prefix=CHECK-INVALID %s
+
+// CHECK-IEEE: "-fdenormal-fp-math=ieee"
+// CHECK-PS: "-fdenormal-fp-math=preserve-sign"
+// CHECK-PZ: "-fdenormal-fp-math=positive-zero"
+// CHECK-NO-UNSAFE-NOT: "-fdenormal-fp-math=ieee"
+// CHECK-INVALID: error: invalid value 'foo' in '-fdenormal-fp-math=foo'