[clang] fe06b9f - Bringing back the test with the required target related to commit 96515df816ebc3af2a632669a26374745e98b0c5

Masoud Ataei via cfe-commits cfe-commits at lists.llvm.org
Wed Jul 6 13:04:39 PDT 2022


Author: Masoud Ataei
Date: 2022-07-06T13:04:17-07:00
New Revision: fe06b9f02ccddc2843505927fbd38a712d06822d

URL: https://github.com/llvm/llvm-project/commit/fe06b9f02ccddc2843505927fbd38a712d06822d
DIFF: https://github.com/llvm/llvm-project/commit/fe06b9f02ccddc2843505927fbd38a712d06822d.diff

LOG: Bringing back the test with the required target related to commit 96515df816ebc3af2a632669a26374745e98b0c5

Added: 
    clang/test/CodeGen/lower-mass-end-to-end.c

Modified: 
    

Removed: 
    


################################################################################
diff  --git a/clang/test/CodeGen/lower-mass-end-to-end.c b/clang/test/CodeGen/lower-mass-end-to-end.c
new file mode 100644
index 0000000000000..41a65900d4d23
--- /dev/null
+++ b/clang/test/CodeGen/lower-mass-end-to-end.c
@@ -0,0 +1,148 @@
+// REQUIRES: powerpc-registered-target
+// RUN: %clang -mllvm -enable-ppc-gen-scalar-mass -O3 -fapprox-func --target=powerpc64le-unknown-linux-gnu -S %s -o -| FileCheck %s -check-prefix=CHECK-MASS-AFN
+// RUN: %clang -mllvm -enable-ppc-gen-scalar-mass -Ofast --target=powerpc64le-unknown-linux-gnu -S %s -o -| FileCheck %s -check-prefix=CHECK-MASS-FAST
+// RUN: %clang -mllvm -enable-ppc-gen-scalar-mass -O3 -fapprox-func --target=powerpc-ibm-aix-xcoff -S %s -o -| FileCheck %s -check-prefix=CHECK-MASS-AFN
+// RUN: %clang -mllvm -enable-ppc-gen-scalar-mass -Ofast --target=powerpc-ibm-aix-xcoff -S %s -o -| FileCheck %s -check-prefix=CHECK-MASS-FAST
+
+// RUN: %clang -mllvm -enable-ppc-gen-scalar-mass=false -O3 -fapprox-func --target=powerpc64le-unknown-linux-gnu -S %s -o -| FileCheck %s -check-prefix=CHECK-NO-MASS-AFN
+// RUN: %clang -mllvm -enable-ppc-gen-scalar-mass=false -Ofast --target=powerpc64le-unknown-linux-gnu -S %s -o -| FileCheck %s -check-prefix=CHECK-NO-MASS-FAST
+// RUN: %clang -mllvm -enable-ppc-gen-scalar-mass=false -O3 -fapprox-func --target=powerpc-ibm-aix-xcoff -S %s -o -| FileCheck %s -check-prefix=CHECK-NO-MASS-AFN
+// RUN: %clang -mllvm -enable-ppc-gen-scalar-mass=false -Ofast --target=powerpc-ibm-aix-xcoff -S %s -o -| FileCheck %s -check-prefix=CHECK-NO-MASS-FAST
+
+// RUN: %clang -mllvm -enable-ppc-gen-scalar-mass -O3 -fno-approx-func --target=powerpc64le-unknown-linux-gnu -S %s -o -| FileCheck %s -check-prefix=CHECK-NO-MASS-AFN
+// RUN: %clang -mllvm -enable-ppc-gen-scalar-mass -fno-fast-math --target=powerpc64le-unknown-linux-gnu -S %s -o -| FileCheck %s -check-prefix=CHECK-NO-MASS-FAST
+// RUN: %clang -mllvm -enable-ppc-gen-scalar-mass -O3 -fno-approx-func --target=powerpc-ibm-aix-xcoff -S %s -o -| FileCheck %s -check-prefix=CHECK-NO-MASS-AFN
+// RUN: %clang -mllvm -enable-ppc-gen-scalar-mass -fno-fast-math --target=powerpc-ibm-aix-xcoff -S %s -o -| FileCheck %s -check-prefix=CHECK-NO-MASS-FAST
+
+extern double sin(double a);
+extern double cos(double a);
+extern double pow(double a, double b);
+extern double log(double a);
+extern double log10(double a);
+extern double exp(double a);
+extern float sinf(float a);
+extern float cosf(float a);
+extern float powf(float a, float b);
+extern float logf(float a);
+extern float log10f(float a);
+extern float expf(float a);
+
+double sin_f64(double a) {
+// CHECK-LABEL: sin_f64
+// CHECK-MASS-FAST: __xl_sin_finite
+// CHECK-MASS-AFN: __xl_sin
+// CHECK-NO-MASS-FAST-NOT: {{__xl_sin|__xl_sin_finite}}
+// CHECK-NO-MASS-AFN-NOT: {{__xl_sin|__xl_sin_finite}}
+// CHECK: blr
+  return sin(a);
+}
+
+double cos_f64(double a) {
+// CHECK-LABEL: cos_f64
+// CHECK-MASS-FAST: __xl_cos_finite
+// CHECK-MASS-AFN: __xl_cos
+// CHECK-NO-MASS-FAST-NOT: {{__xl_cos|__xl_cos_finite}}
+// CHECK-NO-MASS-AFN-NOT: {{__xl_cos|__xl_cos_finite}}
+// CHECK: blr
+  return cos(a);
+}
+
+double pow_f64(double a, double b) {
+// CHECK-LABEL: pow_f64
+// CHECK-MASS-FAST: __xl_pow_finite
+// CHECK-MASS-AFN: __xl_pow
+// CHECK-NO-MASS-FAST-NOT: {{__xl_pow|__xl_pow_finite}}
+// CHECK-NO-MASS-AFN-NOT: {{__xl_pow|__xl_pow_finite}}
+// CHECK: blr
+  return pow(a, b);
+}
+
+double log_f64(double a) {
+// CHECK-LABEL: log_f64
+// CHECK-MASS-FAST: __xl_log_finite
+// CHECK-MASS-AFN: __xl_log
+// CHECK-NO-MASS-FAST-NOT: {{__xl_log|__xl_log_finite}}
+// CHECK-NO-MASS-AFN-NOT: {{__xl_log|__xl_log_finite}}
+// CHECK: blr
+  return log(a);
+}
+
+double log10_f64(double a) {
+// CHECK-LABEL: log10_f64
+// CHECK-MASS-FAST: __xl_log10_finite
+// CHECK-MASS-AFN: __xl_log10
+// CHECK-NO-MASS-FAST-NOT: {{__xl_log10|__xl_log10_finite}}
+// CHECK-NO-MASS-AFN-NOT: {{__xl_log10|__xl_log10_finite}}
+// CHECK: blr
+  return log10(a);
+}
+
+double exp_f64(double a) {
+// CHECK-LABEL: exp_f64
+// CHECK-MASS-FAST: __xl_exp_finite
+// CHECK-MASS-AFN: __xl_exp
+// CHECK-NO-MASS-FAST-NOT: {{__xl_exp|__xl_exp_finite}}
+// CHECK-NO-MASS-AFN-NOT: {{__xl_exp|__xl_exp_finite}}
+// CHECK: blr
+  return exp(a);
+}
+
+float sin_f32(float a) {
+// CHECK-LABEL: sin_f32
+// CHECK-MASS-FAST: __xl_sinf_finite
+// CHECK-MASS-AFN: __xl_sinf
+// CHECK-NO-MASS-FAST-NOT: {{__xl_sinf|__xl_sinf_finite}}
+// CHECK-NO-MASS-AFN-NOT: {{__xl_sinf|__xl_sinf_finite}}
+// CHECK: blr
+  return sinf(a);
+}
+
+float cos_f32(float a) {
+// CHECK-LABEL: cos_f32
+// CHECK-MASS-FAST: __xl_cosf_finite
+// CHECK-MASS-AFN: __xl_cosf
+// CHECK-NO-MASS-FAST-NOT: {{__xl_cosf|__xl_cosf_finite}}
+// CHECK-NO-MASS-AFN-NOT: {{__xl_cosf|__xl_cosf_finite}}
+// CHECK: blr
+  return cosf(a);
+}
+
+float pow_f32(float a, float b) {
+// CHECK-LABEL: pow_f32
+// CHECK-MASS-FAST: __xl_powf_finite
+// CHECK-MASS-AFN: __xl_powf
+// CHECK-NO-MASS-FAST-NOT: {{__xl_pow|__xl_powf_finite}}
+// CHECK-NO-MASS-AFN-NOT: {{__xl_pow|__xl_powf_finite}}
+// CHECK: blr
+  return powf(a, b);
+}
+
+float log_f32(float a) {
+// CHECK-LABEL: log_f32
+// CHECK-MASS-FAST: __xl_logf_finite
+// CHECK-MASS-AFN: __xl_logf
+// CHECK-NO-MASS-FAST-NOT: {{__xl_logf|__xl_logf_finite}}
+// CHECK-NO-MASS-AFN-NOT: {{__xl_logf|__xl_logf_finite}}
+// CHECK: blr
+  return logf(a);
+}
+
+float log10_f32(float a) {
+// CHECK-LABEL: log10_f32
+// CHECK-MASS-FAST: __xl_log10f_finite
+// CHECK-MASS-AFN: __xl_log10f
+// CHECK-NO-MASS-FAST-NOT: {{__xl_log10f|__xl_log10f_finite}}
+// CHECK-NO-MASS-AFN-NOT: {{__xl_log10f|__xl_log10f_finite}}
+// CHECK: blr
+  return log10f(a);
+}
+
+float exp_f32(float a) {
+// CHECK-LABEL: exp_f32
+// CHECK-MASS-FAST: __xl_expf_finite
+// CHECK-MASS-AFN: __xl_expf
+// CHECK-NO-MASS-FAST-NOT: {{__xl_expf|__xl_expf_finite}}
+// CHECK-NO-MASS-AFN-NOT: {{__xl_expf|__xl_expf_finite}}
+// CHECK: blr
+  return expf(a);
+}


        


More information about the cfe-commits mailing list