blob: cad0fbaf758b32866ebd54fe51c4757c0bb143c1 [file] [log] [blame]
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 1
; Bound: 58
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
OpEntryPoint GLCompute %f "f"
OpExecutionMode %f LocalSize 1 1 1
OpMemberName %rarr_block 0 "inner"
OpName %rarr_block "rarr_block"
OpName %vector "vector"
OpName %idx "idx"
OpName %x "x"
OpName %matrix "matrix"
OpName %idx_0 "idx"
OpName %x_0 "x"
OpName %fixed_size_array "fixed_size_array"
OpName %arr "arr"
OpName %idx "idx"
OpName %x_1 "x"
OpName %runtime_size_array "runtime_size_array"
OpName %idx_1 "idx"
OpName %x_2 "x"
OpName %f "f"
OpDecorate %_runtimearr_float ArrayStride 4
OpMemberDecorate %rarr_block 0 Offset 0
OpDecorate %rarr_block Block
OpDecorate %1 DescriptorSet 0
OpDecorate %1 Binding 0
OpDecorate %1 NonWritable
OpDecorate %_arr_int_uint_2 ArrayStride 4
%float = OpTypeFloat 32
%_runtimearr_float = OpTypeRuntimeArray %float
%rarr_block = OpTypeStruct %_runtimearr_float
%_ptr_StorageBuffer_rarr_block = OpTypePointer StorageBuffer %rarr_block
%1 = OpVariable %_ptr_StorageBuffer_rarr_block StorageBuffer
%v2float = OpTypeVector %float 2
%mat2v2float = OpTypeMatrix %v2float 2
%_ptr_Private_mat2v2float = OpTypePointer Private %mat2v2float
%float_1 = OpConstant %float 1
%float_2 = OpConstant %float 2
%11 = OpConstantComposite %v2float %float_1 %float_2
%float_3 = OpConstant %float 3
%float_4 = OpConstant %float 4
%14 = OpConstantComposite %v2float %float_3 %float_4
%10 = OpConstantComposite %mat2v2float %11 %14
%6 = OpVariable %_ptr_Private_mat2v2float Private %10
%void = OpTypeVoid
%19 = OpTypeFunction %void
%int = OpTypeInt 32 1
%idx = OpConstant %int 3
%v2int = OpTypeVector %int 2
%int_1 = OpConstant %int 1
%int_2 = OpConstant %int 2
%24 = OpConstantComposite %v2int %int_1 %int_2
%idx_0 = OpConstant %int 4
%_ptr_Private_v2float = OpTypePointer Private %v2float
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%arr = OpConstantComposite %_arr_int_uint_2 %int_1 %int_2
%_ptr_Function__arr_int_uint_2 = OpTypePointer Function %_arr_int_uint_2
%_ptr_Function_int = OpTypePointer Function %int
%idx_1 = OpConstant %int -1
%_ptr_StorageBuffer_float = OpTypePointer StorageBuffer %float
%uint_0 = OpConstant %uint 0
%vector = OpFunction %void None %19
%20 = OpLabel
%x = OpVectorExtractDynamic %int %24 %idx
OpReturn
OpFunctionEnd
%matrix = OpFunction %void None %19
%29 = OpLabel
%31 = OpAccessChain %_ptr_Private_v2float %6 %idx_0
%x_0 = OpLoad %v2float %31 None
OpReturn
OpFunctionEnd
%fixed_size_array = OpFunction %void None %19
%35 = OpLabel
%40 = OpVariable %_ptr_Function__arr_int_uint_2 Function
OpStore %40 %arr
%42 = OpAccessChain %_ptr_Function_int %40 %idx
%x_1 = OpLoad %int %42 None
OpReturn
OpFunctionEnd
%runtime_size_array = OpFunction %void None %19
%46 = OpLabel
%48 = OpAccessChain %_ptr_StorageBuffer_float %1 %uint_0 %idx_1
%x_2 = OpLoad %float %48 None
OpReturn
OpFunctionEnd
%f = OpFunction %void None %19
%53 = OpLabel
%54 = OpFunctionCall %void %vector
%55 = OpFunctionCall %void %matrix
%56 = OpFunctionCall %void %fixed_size_array
%57 = OpFunctionCall %void %runtime_size_array
OpReturn
OpFunctionEnd