diff options
Diffstat (limited to 'clang/test/CodeGen/2009-09-24-SqrtErrno.c')
-rw-r--r-- | clang/test/CodeGen/2009-09-24-SqrtErrno.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/clang/test/CodeGen/2009-09-24-SqrtErrno.c b/clang/test/CodeGen/2009-09-24-SqrtErrno.c new file mode 100644 index 0000000..b4a04ff --- /dev/null +++ b/clang/test/CodeGen/2009-09-24-SqrtErrno.c @@ -0,0 +1,12 @@ +// RUN: %clang_cc1 %s -emit-llvm -o - -fmath-errno | FileCheck %s +// llvm.sqrt has undefined behavior on negative inputs, so it is +// inappropriate to translate C/C++ sqrt to this. + +float sqrtf(float x); +float foo(float X) { +// CHECK: foo +// CHECK-NOT: readonly +// CHECK: call float @sqrtf + // Check that this is not marked readonly when errno is used. + return sqrtf(X); +} |