blob: 441812ee842db89c99ce3888ac5a18955e5a697b [file] [log] [blame]
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
OpEntryPoint GLCompute %unused_entry_point "unused_entry_point"
OpExecutionMode %unused_entry_point LocalSize 1 1 1
OpName %unused_entry_point "unused_entry_point"
OpName %f "f"
OpName %tint_return_flag "tint_return_flag"
OpName %tint_return_value "tint_return_value"
OpName %i "i"
%void = OpTypeVoid
%1 = OpTypeFunction %void
%int = OpTypeInt 32 1
%5 = OpTypeFunction %int
%bool = OpTypeBool
%_ptr_Function_bool = OpTypePointer Function %bool
%12 = OpConstantNull %bool
%_ptr_Function_int = OpTypePointer Function %int
%15 = OpConstantNull %int
%int_4 = OpConstant %int 4
%true = OpConstantTrue %bool
%int_1 = OpConstant %int 1
%unused_entry_point = OpFunction %void None %1
%4 = OpLabel
OpReturn
OpFunctionEnd
%f = OpFunction %int None %5
%8 = OpLabel
%tint_return_flag = OpVariable %_ptr_Function_bool Function %12
%tint_return_value = OpVariable %_ptr_Function_int Function %15
%i = OpVariable %_ptr_Function_int Function %15
OpBranch %17
%17 = OpLabel
OpLoopMerge %18 %19 None
OpBranch %20
%20 = OpLabel
%21 = OpLoad %int %i
%23 = OpSGreaterThan %bool %21 %int_4
OpSelectionMerge %24 None
OpBranchConditional %23 %25 %24
%25 = OpLabel
OpStore %tint_return_flag %true
%27 = OpLoad %int %i
OpStore %tint_return_value %27
OpBranch %18
%24 = OpLabel
OpBranch %19
%19 = OpLabel
%28 = OpLoad %int %i
%30 = OpIAdd %int %28 %int_1
OpStore %i %30
%31 = OpLoad %int %i
%32 = OpIEqual %bool %31 %int_4
OpBranchConditional %32 %18 %17
%18 = OpLabel
%34 = OpLoad %bool %tint_return_flag
%33 = OpLogicalNot %bool %34
OpSelectionMerge %35 None
OpBranchConditional %33 %36 %35
%36 = OpLabel
OpStore %tint_return_flag %true
%37 = OpLoad %int %i
OpStore %tint_return_value %37
OpBranch %35
%35 = OpLabel
%38 = OpLoad %int %tint_return_value
OpReturnValue %38
OpFunctionEnd