Author: Thomas Preud'homme Date: 2021-04-07T09:43:58+01:00 New Revision: e018698bec363637f0da25b68da9ba8c3192d1cb
URL: https://github.com/llvm/llvm-project/commit/e018698bec363637f0da25b68da9ba8c3192d1cb DIFF: https://github.com/llvm/llvm-project/commit/e018698bec363637f0da25b68da9ba8c3192d1cb.diff LOG: [clang, test] Fix use of undef FileCheck var Clang test CodeGen/libcalls.c contains CHECK-NOT directives using a variable defined in a CHECK directive with a different prefix never enabled together, therefore causing the variable to be undefined in that CHECK-NOT. The intent of the test is to check that some declaration do not have the same attribute as when compiling the test without -fmath-errno. This commits instead changes all CHECK-NOT to CHECK directive, checking that they all use the same attribute. It also adds an extra CHECK for that prefix to check the expected attributes these functions should have when compiling with -fmath-errno. Reviewed By: rjmccall Differential Revision: https://reviews.llvm.org/D99898 Added: Modified: clang/test/CodeGen/libcalls.c Removed: ################################################################################ diff --git a/clang/test/CodeGen/libcalls.c b/clang/test/CodeGen/libcalls.c index 41ad6dc8e555..627732916f25 100644 --- a/clang/test/CodeGen/libcalls.c +++ b/clang/test/CodeGen/libcalls.c @@ -88,9 +88,9 @@ void test_builtins(double d, float f, long double ld) { // CHECK-NO: declare double @atan(double) [[NUW_RN:#[0-9]+]] // CHECK-NO: declare x86_fp80 @atanl(x86_fp80) [[NUW_RN]] // CHECK-NO: declare float @atanf(float) [[NUW_RN]] -// CHECK-YES-NOT: declare double @atan(double) [[NUW_RN]] -// CHECK-YES-NOT: declare x86_fp80 @atanl(x86_fp80) [[NUW_RN]] -// CHECK-YES-NOT: declare float @atanf(float) [[NUW_RN]] +// CHECK-YES: declare double @atan(double) [[NUW:#[0-9]+]] +// CHECK-YES: declare x86_fp80 @atanl(x86_fp80) [[NUW]] +// CHECK-YES: declare float @atanf(float) [[NUW]] double atan2_ = atan2(d, 2); long double atan2l_ = atan2l(ld, ld); @@ -98,9 +98,9 @@ void test_builtins(double d, float f, long double ld) { // CHECK-NO: declare double @atan2(double, double) [[NUW_RN]] // CHECK-NO: declare x86_fp80 @atan2l(x86_fp80, x86_fp80) [[NUW_RN]] // CHECK-NO: declare float @atan2f(float, float) [[NUW_RN]] -// CHECK-YES-NOT: declare double @atan2(double, double) [[NUW_RN]] -// CHECK-YES-NOT: declare x86_fp80 @atan2l(x86_fp80, x86_fp80) [[NUW_RN]] -// CHECK-YES-NOT: declare float @atan2f(float, float) [[NUW_RN]] +// CHECK-YES: declare double @atan2(double, double) [[NUW]] +// CHECK-YES: declare x86_fp80 @atan2l(x86_fp80, x86_fp80) [[NUW]] +// CHECK-YES: declare float @atan2f(float, float) [[NUW]] double exp_ = exp(d); long double expl_ = expl(ld); @@ -108,9 +108,9 @@ void test_builtins(double d, float f, long double ld) { // CHECK-NO: declare double @llvm.exp.f64(double) [[NUW_RNI]] // CHECK-NO: declare x86_fp80 @llvm.exp.f80(x86_fp80) [[NUW_RNI]] // CHECK-NO: declare float @llvm.exp.f32(float) [[NUW_RNI]] -// CHECK-YES-NOT: declare double @exp(double) [[NUW_RN]] -// CHECK-YES-NOT: declare x86_fp80 @expl(x86_fp80) [[NUW_RN]] -// CHECK-YES-NOT: declare float @expf(float) [[NUW_RN]] +// CHECK-YES: declare double @exp(double) [[NUW]] +// CHECK-YES: declare x86_fp80 @expl(x86_fp80) [[NUW]] +// CHECK-YES: declare float @expf(float) [[NUW]] double log_ = log(d); long double logl_ = logl(ld); @@ -118,10 +118,11 @@ void test_builtins(double d, float f, long double ld) { // CHECK-NO: declare double @llvm.log.f64(double) [[NUW_RNI]] // CHECK-NO: declare x86_fp80 @llvm.log.f80(x86_fp80) [[NUW_RNI]] // CHECK-NO: declare float @llvm.log.f32(float) [[NUW_RNI]] -// CHECK-YES-NOT: declare double @log(double) [[NUW_RN]] -// CHECK-YES-NOT: declare x86_fp80 @logl(x86_fp80) [[NUW_RN]] -// CHECK-YES-NOT: declare float @logf(float) [[NUW_RN]] +// CHECK-YES: declare double @log(double) [[NUW]] +// CHECK-YES: declare x86_fp80 @logl(x86_fp80) [[NUW]] +// CHECK-YES: declare float @logf(float) [[NUW]] } +// CHECK-YES: attributes [[NUW]] = { nounwind "frame-pointer"="none" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-features"="+cx8,+x87" } // CHECK-NO-DAG: attributes [[NUW_RN]] = { nounwind readnone{{.*}} } // CHECK-NO-DAG: attributes [[NUW_RNI]] = { nofree nosync nounwind readnone speculatable willreturn } _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits