blob: d2ad496f5f43963fbf1408774a97e772afda8532 [file] [edit]
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 1
; Bound: 68
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
OpEntryPoint GLCompute %main "main" %main_local_invocation_index_Input
OpExecutionMode %main LocalSize 1 1 1
OpName %bool_var "bool_var"
OpName %i32_var "i32_var"
OpName %u32_var "u32_var"
OpName %f32_var "f32_var"
OpName %v2i32_var "v2i32_var"
OpName %v3u32_var "v3u32_var"
OpName %v4f32_var "v4f32_var"
OpName %m2x3_var "m2x3_var"
OpName %arr_var "arr_var"
OpMemberName %S 0 "a"
OpName %S "S"
OpName %struct_var "struct_var"
OpName %wg_var "wg_var"
OpName %main_local_invocation_index_Input "main_local_invocation_index_Input"
OpName %main_inner "main_inner"
OpName %tint_local_index "tint_local_index"
OpName %main "main"
OpDecorate %_arr_float_uint_4 ArrayStride 4
OpMemberDecorate %S 0 Offset 0
OpDecorate %main_local_invocation_index_Input BuiltIn LocalInvocationIndex
%bool = OpTypeBool
%_ptr_Private_bool = OpTypePointer Private %bool
%4 = OpConstantNull %bool
%bool_var = OpVariable %_ptr_Private_bool Private %4
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
%8 = OpConstantNull %int
%i32_var = OpVariable %_ptr_Private_int Private %8
%uint = OpTypeInt 32 0
%_ptr_Private_uint = OpTypePointer Private %uint
%12 = OpConstantNull %uint
%u32_var = OpVariable %_ptr_Private_uint Private %12
%float = OpTypeFloat 32
%_ptr_Private_float = OpTypePointer Private %float
%16 = OpConstantNull %float
%f32_var = OpVariable %_ptr_Private_float Private %16
%v2int = OpTypeVector %int 2
%_ptr_Private_v2int = OpTypePointer Private %v2int
%20 = OpConstantNull %v2int
%v2i32_var = OpVariable %_ptr_Private_v2int Private %20
%v3uint = OpTypeVector %uint 3
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
%24 = OpConstantNull %v3uint
%v3u32_var = OpVariable %_ptr_Private_v3uint Private %24
%v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
%28 = OpConstantNull %v4float
%v4f32_var = OpVariable %_ptr_Private_v4float Private %28
%v3float = OpTypeVector %float 3
%mat2v3float = OpTypeMatrix %v3float 2
%_ptr_Private_mat2v3float = OpTypePointer Private %mat2v3float
%33 = OpConstantNull %mat2v3float
%m2x3_var = OpVariable %_ptr_Private_mat2v3float Private %33
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
%_ptr_Private__arr_float_uint_4 = OpTypePointer Private %_arr_float_uint_4
%38 = OpConstantNull %_arr_float_uint_4
%arr_var = OpVariable %_ptr_Private__arr_float_uint_4 Private %38
%S = OpTypeStruct %float
%_ptr_Private_S = OpTypePointer Private %S
%42 = OpConstantNull %S
%struct_var = OpVariable %_ptr_Private_S Private %42
%_ptr_Workgroup_float = OpTypePointer Workgroup %float
%wg_var = OpVariable %_ptr_Workgroup_float Workgroup
%_ptr_Input_uint = OpTypePointer Input %uint
%main_local_invocation_index_Input = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%50 = OpTypeFunction %void %uint
%uint_0 = OpConstant %uint 0
%float_0 = OpConstant %float 0
%uint_2 = OpConstant %uint 2
%uint_264 = OpConstant %uint 264
%false = OpConstantFalse %bool
%int_0 = OpConstant %int 0
%float_42 = OpConstant %float 42
%64 = OpTypeFunction %void
%main_inner = OpFunction %void None %50
%tint_local_index = OpFunctionParameter %uint
%51 = OpLabel
%52 = OpIEqual %bool %tint_local_index %uint_0
OpSelectionMerge %54 None
OpBranchConditional %52 %55 %54
%55 = OpLabel
OpStore %wg_var %float_0 None
OpBranch %54
%54 = OpLabel
OpControlBarrier %uint_2 %uint_2 %uint_264
OpStore %bool_var %false None
OpStore %i32_var %int_0 None
OpStore %u32_var %uint_0 None
OpStore %f32_var %float_0 None
OpStore %v2i32_var %20 None
OpStore %v3u32_var %24 None
OpStore %v4f32_var %28 None
OpStore %m2x3_var %33 None
OpStore %arr_var %38 None
OpStore %struct_var %42 None
OpStore %wg_var %float_42 None
OpReturn
OpFunctionEnd
%main = OpFunction %void None %64
%65 = OpLabel
%66 = OpLoad %uint %main_local_invocation_index_Input None
%67 = OpFunctionCall %void %main_inner %66
OpReturn
OpFunctionEnd