summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/SystemZ/vec-const-19.ll
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/CodeGen/SystemZ/vec-const-19.ll')
-rw-r--r--llvm/test/CodeGen/SystemZ/vec-const-19.ll18
1 files changed, 18 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/SystemZ/vec-const-19.ll b/llvm/test/CodeGen/SystemZ/vec-const-19.ll
new file mode 100644
index 00000000000..e48bfe9250d
--- /dev/null
+++ b/llvm/test/CodeGen/SystemZ/vec-const-19.ll
@@ -0,0 +1,18 @@
+; Test that a scalar FP constant can be reused from a vector splat constant
+; of the same value.
+;
+; RUN: llc < %s -mtriple=s390x-linux-gnu -mcpu=z13 | FileCheck %s
+
+define void @fun() {
+; CHECK-LABEL: fun:
+; CHECK: vgmg %v0, 2, 10
+; CHECK-NOT: vgmg %v0, 2, 10
+
+ %tmp = fadd <2 x double> zeroinitializer, <double 1.000000e+00, double 1.000000e+00>
+ %tmp1 = fmul <2 x double> %tmp, <double 5.000000e-01, double 5.000000e-01>
+ store <2 x double> %tmp1, <2 x double>* undef
+ %tmp2 = load double, double* undef
+ %tmp3 = fmul double %tmp2, 5.000000e-01
+ store double %tmp3, double* undef
+ ret void
+}
OpenPOWER on IntegriCloud