diff options
| -rw-r--r-- | llvm/test/CodeGen/X86/2012-04-26-sdglue.ll | 36 |
1 files changed, 24 insertions, 12 deletions
diff --git a/llvm/test/CodeGen/X86/2012-04-26-sdglue.ll b/llvm/test/CodeGen/X86/2012-04-26-sdglue.ll index 4e3f1f4a6e4..eaea7e857ea 100644 --- a/llvm/test/CodeGen/X86/2012-04-26-sdglue.ll +++ b/llvm/test/CodeGen/X86/2012-04-26-sdglue.ll @@ -1,19 +1,31 @@ -; RUN: llc < %s -mtriple=x86_64-apple-darwin -mcpu=core-avx2 -mattr=+avx | FileCheck %s +; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py +; RUN: llc < %s -mtriple=x86_64-apple-darwin -mcpu=core-avx2 | FileCheck %s + ; rdar://11314175: SD Scheduler, BuildSchedUnits assert: ; N->getNodeId() == -1 && "Node already inserted! -; It's hard to test for the ISEL condition because CodeGen optimizes -; away the bugpointed code. Just ensure the basics are still there. -;CHECK-LABEL: func: -;CHECK: vxorps -;CHECK: vpshufd -;CHECK: vpbroadcastd -;CHECK: vinserti128 -;CHECK: vmulps -;CHECK: vmulps -;CHECK: ret - define void @func() nounwind ssp { +; CHECK-LABEL: func: +; CHECK: ## BB#0: +; CHECK-NEXT: vmovups 0, %xmm0 +; CHECK-NEXT: vxorps %ymm1, %ymm1, %ymm1 +; CHECK-NEXT: vblendps {{.*#+}} ymm2 = ymm0[0,1,2,3],ymm1[4,5,6,7] +; CHECK-NEXT: vpshufd {{.*#+}} xmm0 = xmm0[1,2,3,3] +; CHECK-NEXT: vpbroadcastd 32, %xmm3 +; CHECK-NEXT: vinserti128 $1, %xmm3, %ymm0, %ymm0 +; CHECK-NEXT: vmulps %ymm0, %ymm2, %ymm2 +; CHECK-NEXT: vmulps %ymm0, %ymm0, %ymm0 +; CHECK-NEXT: vaddps %ymm0, %ymm2, %ymm0 +; CHECK-NEXT: vaddps %ymm0, %ymm0, %ymm0 +; CHECK-NEXT: vmulps %xmm0, %xmm0, %xmm0 +; CHECK-NEXT: vperm2f128 {{.*#+}} ymm0 = zero,zero,ymm0[0,1] +; CHECK-NEXT: vaddps %ymm0, %ymm0, %ymm0 +; CHECK-NEXT: vhaddps %ymm0, %ymm0, %ymm0 +; CHECK-NEXT: vsubps %ymm0, %ymm0, %ymm0 +; CHECK-NEXT: vhaddps %ymm0, %ymm1, %ymm0 +; CHECK-NEXT: vmovaps %ymm0, (%rax) +; CHECK-NEXT: vzeroupper +; CHECK-NEXT: retq %tmp = load <4 x float>, <4 x float>* null, align 1 %tmp14 = getelementptr <4 x float>, <4 x float>* null, i32 2 %tmp15 = load <4 x float>, <4 x float>* %tmp14, align 1 |

