1*1dcda06cSAndrey Tretyakov; RUN: llc -O0 -mtriple=spirv32-unknown-unknown %s -o - | FileCheck %s --check-prefix=CHECK-SPIRV
2*1dcda06cSAndrey Tretyakov
3*1dcda06cSAndrey Tretyakov; CHECK-SPIRV: OpName %[[#vec:]] "vec"
4*1dcda06cSAndrey Tretyakov; CHECK-SPIRV: OpName %[[#index:]] "index"
5*1dcda06cSAndrey Tretyakov; CHECK-SPIRV: OpName %[[#res:]] "res"
6*1dcda06cSAndrey Tretyakov
7*1dcda06cSAndrey Tretyakov; CHECK-SPIRV: %[[#float:]] = OpTypeFloat 32
8*1dcda06cSAndrey Tretyakov; CHECK-SPIRV: %[[#float2:]] = OpTypeVector %[[#float]] 2
9*1dcda06cSAndrey Tretyakov
10*1dcda06cSAndrey Tretyakov; CHECK-SPIRV: %[[#res]] = OpVectorExtractDynamic %[[#float]] %[[#vec]] %[[#index]]
11*1dcda06cSAndrey Tretyakov
12*1dcda06cSAndrey Tretyakov; Function Attrs: nounwind
13*1dcda06cSAndrey Tretyakovdefine spir_kernel void @test(float addrspace(1)* nocapture %out, <2 x float> %vec, i32 %index) {
14*1dcda06cSAndrey Tretyakoventry:
15*1dcda06cSAndrey Tretyakov  %res = extractelement <2 x float> %vec, i32 %index
16*1dcda06cSAndrey Tretyakov  store float %res, float addrspace(1)* %out, align 4
17*1dcda06cSAndrey Tretyakov  ret void
18*1dcda06cSAndrey Tretyakov}
19