Added VPERM optimization for AVX2 shuffles
[oota-llvm.git] / test / CodeGen / X86 / 2007-01-08-InstrSched.ll
index 4ff1bf1c52ab7cf314497fd147d936a73a149378..24aa5b98d0bb8c8c9c3e39c4e359ff0925e43d52 100644 (file)
@@ -1,14 +1,22 @@
 ; PR1075
-; RUN: llvm-as < %s | llc -mtriple=x86_64-apple-darwin | \
-; RUN:   %prcontext {mulss     LCPI3__foo} 1 | grep mulss | count 1
+; RUN: llc < %s -mcpu=generic -mtriple=x86_64-apple-darwin -O3 | FileCheck %s
 
-define float @foo(float %x) {
-    %tmp1 = mul float %x, 3.000000e+00
-    %tmp3 = mul float %x, 5.000000e+00
-    %tmp5 = mul float %x, 7.000000e+00
-    %tmp7 = mul float %x, 1.100000e+01
-    %tmp10 = add float %tmp1, %tmp3
-    %tmp12 = add float %tmp10, %tmp5
-    %tmp14 = add float %tmp12, %tmp7
+define float @foo(float %x) nounwind {
+    %tmp1 = fmul float %x, 3.000000e+00
+    %tmp3 = fmul float %x, 5.000000e+00
+    %tmp5 = fmul float %x, 7.000000e+00
+    %tmp7 = fmul float %x, 1.100000e+01
+    %tmp10 = fadd float %tmp1, %tmp3
+    %tmp12 = fadd float %tmp10, %tmp5
+    %tmp14 = fadd float %tmp12, %tmp7
     ret float %tmp14
+
+; CHECK: mulss
+; CHECK: mulss
+; CHECK: addss
+; CHECK: mulss
+; CHECK: addss
+; CHECK: mulss
+; CHECK: addss
+; CHECK: ret
 }