summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen/builtins-systemz-vector2.c
diff options
context:
space:
mode:
authorKevin P. Neal <kevin.neal@sas.com>2019-12-23 14:05:06 -0500
committerKevin P. Neal <kevin.neal@sas.com>2020-01-02 12:14:43 -0500
commit89d6c288ba5adb20d92142e9425f7ab79b8f159e (patch)
tree3a0ff10c788641c34d56dea328e514a4b8154dac /clang/test/CodeGen/builtins-systemz-vector2.c
parent846bf1d43f90ea99b812cab10cd66d265bcb9c7a (diff)
downloadbcm5719-llvm-89d6c288ba5adb20d92142e9425f7ab79b8f159e.tar.gz
bcm5719-llvm-89d6c288ba5adb20d92142e9425f7ab79b8f159e.zip
[SystemZ] Use FNeg in s390x clang builtins
The s390x builtins are still using FSub instead of FNeg. Correct that.
Diffstat (limited to 'clang/test/CodeGen/builtins-systemz-vector2.c')
-rw-r--r--clang/test/CodeGen/builtins-systemz-vector2.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/clang/test/CodeGen/builtins-systemz-vector2.c b/clang/test/CodeGen/builtins-systemz-vector2.c
index a17cdf0a5ae..0a9906002f2 100644
--- a/clang/test/CodeGen/builtins-systemz-vector2.c
+++ b/clang/test/CodeGen/builtins-systemz-vector2.c
@@ -64,11 +64,11 @@ void test_float(void) {
vd = __builtin_s390_vfnmadb(vd, vd, vd);
// CHECK: [[RES:%[^ ]+]] = call <2 x double> @llvm.fma.v2f64(<2 x double> %{{.*}}, <2 x double> %{{.*}}, <2 x double> %{{.*}})
- // CHECK: fsub <2 x double> <double -0.000000e+00, double -0.000000e+00>, [[RES]]
+ // CHECK: fneg <2 x double> [[RES]]
vd = __builtin_s390_vfnmsdb(vd, vd, vd);
- // CHECK: [[NEG:%[^ ]+]] = fsub <2 x double> <double -0.000000e+00, double -0.000000e+00>, %{{.*}}
+ // CHECK: [[NEG:%[^ ]+]] = fneg <2 x double> %{{.*}}
// CHECK: [[RES:%[^ ]+]] = call <2 x double> @llvm.fma.v2f64(<2 x double> %{{.*}}, <2 x double> %{{.*}}, <2 x double> [[NEG]])
- // CHECK: fsub <2 x double> <double -0.000000e+00, double -0.000000e+00>, [[RES]]
+ // CHECK: fneg <2 x double> [[RES]]
vsi = __builtin_s390_vfcesbs(vf, vf, &cc);
// CHECK: call { <4 x i32>, i32 } @llvm.s390.vfcesbs(<4 x float> %{{.*}}, <4 x float> %{{.*}})
@@ -102,21 +102,21 @@ void test_float(void) {
vf = __builtin_s390_vfmasb(vf, vf, vf);
// CHECK: call <4 x float> @llvm.fma.v4f32(<4 x float> %{{.*}}, <4 x float> %{{.*}}, <4 x float> %{{.*}})
vf = __builtin_s390_vfmssb(vf, vf, vf);
- // CHECK: [[NEG:%[^ ]+]] = fsub <4 x float> <float -0.000000e+00, float -0.000000e+00, float -0.000000e+00, float -0.000000e+00>, %{{.*}}
+ // CHECK: [[NEG:%[^ ]+]] = fneg <4 x float> %{{.*}}
// CHECK: call <4 x float> @llvm.fma.v4f32(<4 x float> %{{.*}}, <4 x float> %{{.*}}, <4 x float> [[NEG]])
vf = __builtin_s390_vfnmasb(vf, vf, vf);
// CHECK: [[RES:%[^ ]+]] = call <4 x float> @llvm.fma.v4f32(<4 x float> %{{.*}}, <4 x float> %{{.*}}, <4 x float> %{{.*}})
- // CHECK: fsub <4 x float> <float -0.000000e+00, float -0.000000e+00, float -0.000000e+00, float -0.000000e+00>, [[RES]]
+ // CHECK: fneg <4 x float> [[RES]]
vf = __builtin_s390_vfnmssb(vf, vf, vf);
- // CHECK: [[NEG:%[^ ]+]] = fsub <4 x float> <float -0.000000e+00, float -0.000000e+00, float -0.000000e+00, float -0.000000e+00>, %{{.*}}
+ // CHECK: [[NEG:%[^ ]+]] = fneg <4 x float> %{{.*}}
// CHECK: [[RES:%[^ ]+]] = call <4 x float> @llvm.fma.v4f32(<4 x float> %{{.*}}, <4 x float> %{{.*}}, <4 x float> [[NEG]])
- // CHECK: fsub <4 x float> <float -0.000000e+00, float -0.000000e+00, float -0.000000e+00, float -0.000000e+00>, [[RES]]
+ // CHECK: fneg <4 x float> [[RES]]
vf = __builtin_s390_vflpsb(vf);
// CHECK: call <4 x float> @llvm.fabs.v4f32(<4 x float> %{{.*}})
vf = __builtin_s390_vflnsb(vf);
// CHECK: [[ABS:%[^ ]+]] = call <4 x float> @llvm.fabs.v4f32(<4 x float> %{{.*}})
- // CHECK: fsub <4 x float> <float -0.000000e+00, float -0.000000e+00, float -0.000000e+00, float -0.000000e+00>, [[ABS]]
+ // CHECK: fneg <4 x float> [[ABS]]
vf = __builtin_s390_vfisb(vf, 0, 0);
// CHECK: call <4 x float> @llvm.rint.v4f32(<4 x float> %{{.*}})
OpenPOWER on IntegriCloud