1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=x86-64 -mcpu=corei7-avx | FileCheck %s 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Worker 4*9880d681SAndroid Build Coastguard Workerdefine <4 x double> @test_x86_avx_blend_pd_256(<4 x double> %a0) { 5*9880d681SAndroid Build Coastguard Worker %1 = call <4 x double> @llvm.x86.avx.blend.pd.256(<4 x double> %a0, <4 x double> %a0, i32 7) 6*9880d681SAndroid Build Coastguard Worker ret <4 x double> %1 7*9880d681SAndroid Build Coastguard Worker} 8*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: test_x86_avx_blend_pd_256 9*9880d681SAndroid Build Coastguard Worker; CHECK-NOT: vblendpd 10*9880d681SAndroid Build Coastguard Worker; CHECK: ret 11*9880d681SAndroid Build Coastguard Worker 12*9880d681SAndroid Build Coastguard Worker 13*9880d681SAndroid Build Coastguard Workerdefine <8 x float> @test_x86_avx_blend_ps_256(<8 x float> %a0) { 14*9880d681SAndroid Build Coastguard Worker %1 = call <8 x float> @llvm.x86.avx.blend.ps.256(<8 x float> %a0, <8 x float> %a0, i32 7) 15*9880d681SAndroid Build Coastguard Worker ret <8 x float> %1 16*9880d681SAndroid Build Coastguard Worker} 17*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: test_x86_avx_blend_ps_256 18*9880d681SAndroid Build Coastguard Worker; CHECK-NOT: vblendps 19*9880d681SAndroid Build Coastguard Worker; CHECK: ret 20*9880d681SAndroid Build Coastguard Worker 21*9880d681SAndroid Build Coastguard Worker 22*9880d681SAndroid Build Coastguard Workerdefine <4 x double> @test2_x86_avx_blend_pd_256(<4 x double> %a0, <4 x double> %a1) { 23*9880d681SAndroid Build Coastguard Worker %1 = call <4 x double> @llvm.x86.avx.blend.pd.256(<4 x double> %a0, <4 x double> %a1, i32 0) 24*9880d681SAndroid Build Coastguard Worker ret <4 x double> %1 25*9880d681SAndroid Build Coastguard Worker} 26*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: test2_x86_avx_blend_pd_256 27*9880d681SAndroid Build Coastguard Worker; CHECK-NOT: vblendpd 28*9880d681SAndroid Build Coastguard Worker; CHECK: ret 29*9880d681SAndroid Build Coastguard Worker 30*9880d681SAndroid Build Coastguard Worker 31*9880d681SAndroid Build Coastguard Workerdefine <8 x float> @test2_x86_avx_blend_ps_256(<8 x float> %a0, <8 x float> %a1) { 32*9880d681SAndroid Build Coastguard Worker %1 = call <8 x float> @llvm.x86.avx.blend.ps.256(<8 x float> %a0, <8 x float> %a1, i32 0) 33*9880d681SAndroid Build Coastguard Worker ret <8 x float> %1 34*9880d681SAndroid Build Coastguard Worker} 35*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: test2_x86_avx_blend_ps_256 36*9880d681SAndroid Build Coastguard Worker; CHECK-NOT: vblendps 37*9880d681SAndroid Build Coastguard Worker; CHECK: ret 38*9880d681SAndroid Build Coastguard Worker 39*9880d681SAndroid Build Coastguard Worker 40*9880d681SAndroid Build Coastguard Workerdefine <4 x double> @test3_x86_avx_blend_pd_256(<4 x double> %a0, <4 x double> %a1) { 41*9880d681SAndroid Build Coastguard Worker %1 = call <4 x double> @llvm.x86.avx.blend.pd.256(<4 x double> %a0, <4 x double> %a1, i32 -1) 42*9880d681SAndroid Build Coastguard Worker ret <4 x double> %1 43*9880d681SAndroid Build Coastguard Worker} 44*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: test3_x86_avx_blend_pd_256 45*9880d681SAndroid Build Coastguard Worker; CHECK-NOT: vblendpd 46*9880d681SAndroid Build Coastguard Worker; CHECK: ret 47*9880d681SAndroid Build Coastguard Worker 48*9880d681SAndroid Build Coastguard Worker 49*9880d681SAndroid Build Coastguard Workerdefine <8 x float> @test3_x86_avx_blend_ps_256(<8 x float> %a0, <8 x float> %a1) { 50*9880d681SAndroid Build Coastguard Worker %1 = call <8 x float> @llvm.x86.avx.blend.ps.256(<8 x float> %a0, <8 x float> %a1, i32 -1) 51*9880d681SAndroid Build Coastguard Worker ret <8 x float> %1 52*9880d681SAndroid Build Coastguard Worker} 53*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: test3_x86_avx_blend_ps_256 54*9880d681SAndroid Build Coastguard Worker; CHECK-NOT: vblendps 55*9880d681SAndroid Build Coastguard Worker; CHECK: ret 56*9880d681SAndroid Build Coastguard Worker 57*9880d681SAndroid Build Coastguard Worker 58*9880d681SAndroid Build Coastguard Workerdeclare <4 x double> @llvm.x86.avx.blend.pd.256(<4 x double>, <4 x double>, i32) 59*9880d681SAndroid Build Coastguard Workerdeclare <8 x float> @llvm.x86.avx.blend.ps.256(<8 x float>, <8 x float>, i32) 60*9880d681SAndroid Build Coastguard Worker 61