99; getGatherCost().
1010define void @fun0 (ptr nocapture %0 , double %1 ) {
1111; CHECK-LABEL: define void @fun0(
12- ; CHECK: fmul <2 x double>
13- ; CHECK: call <2 x double> @llvm.fmuladd.v2f64(
12+ ; CHECK: fmul <2 x double>
13+ ; CHECK-NEXT: call <2 x double> @llvm.fmuladd.v2f64(
14+ ; CHECK-NEXT: call <2 x double> @llvm.fmuladd.v2f64(
15+ ; CHECK-NEXT: call <2 x double> @llvm.sqrt.v2f64(
1416;
1517; REMARK-LABEL: Function: fun0
1618; REMARK: Args:
@@ -36,13 +38,19 @@ define void @fun0(ptr nocapture %0, double %1) {
3638; getVectorInstrCost().
3739define void @fun1 (double %0 ) {
3840; CHECK-LABEL: define void @fun1(
39- ; CHECK: fsub <2 x double>
40- ; CHECK: fsub <2 x double>
41- ; CHECK: fsub <2 x double>
42- ; CHECK: fmul <2 x double>
43- ; CHECK: call <2 x double> @llvm.fmuladd.v2f64(
44- ; CHECK: call <2 x double> @llvm.fmuladd.v2f64(
45- ; CHECK: %14 = fcmp olt <2 x double> %13, %2
41+ ; CHECK: phi <2 x double>
42+ ; CHECK-NEXT: phi <2 x double>
43+ ; CHECK-NEXT: phi <2 x double>
44+ ; CHECK-NEXT: fsub <2 x double>
45+ ; CHECK-NEXT: fsub <2 x double>
46+ ; CHECK-NEXT: fsub <2 x double>
47+ ; CHECK: fmul <2 x double>
48+ ; CHECK-NEXT: call <2 x double> @llvm.fmuladd.v2f64(
49+ ; CHECK-NEXT: call <2 x double> @llvm.fmuladd.v2f64(
50+ ; CHECK-NEXT: fcmp olt <2 x double>
51+ ; CHECK-NEXT: extractelement <2 x i1>
52+ ; CHECK-NEXT: extractelement <2 x i1>
53+ ; CHECK-NEXT: or i1
4654;
4755; REMARK-LABEL: Function: fun1
4856; REMARK: Args:
@@ -83,7 +91,8 @@ declare double @llvm.fmuladd.f64(double, double, double)
8391; which is recognized in SystemZTTImpl::getScalarizationOverhead().
8492define void @fun2 (ptr %0 , ptr %Dst ) {
8593; CHECK-LABEL: define void @fun2(
86- ; CHECK-NOT: store <2 x i64>
94+ ; CHECK: store i64
95+ ; CHECK: store i64
8796;
8897; REMARK-NOT: Function: fun2
8998
0 commit comments