; SPIR-V | |
; Version: 1.3 | |
; Generator: Google Tint Compiler; 0 | |
; Bound: 38 | |
; Schema: 0 | |
OpCapability Shader | |
OpMemoryModel Logical GLSL450 | |
OpEntryPoint GLCompute %main "main" | |
OpExecutionMode %main LocalSize 1 1 1 | |
OpName %main "main" | |
OpName %i "i" | |
OpName %j "j" | |
%void = OpTypeVoid | |
%1 = OpTypeFunction %void | |
%int = OpTypeInt 32 1 | |
%6 = OpConstantNull %int | |
%_ptr_Function_int = OpTypePointer Function %int | |
%int_2 = OpConstant %int 2 | |
%bool = OpTypeBool | |
%main = OpFunction %void None %1 | |
%4 = OpLabel | |
%i = OpVariable %_ptr_Function_int Function %6 | |
%j = OpVariable %_ptr_Function_int Function %6 | |
OpStore %i %6 | |
OpBranch %9 | |
%9 = OpLabel | |
OpLoopMerge %10 %11 None | |
OpBranch %12 | |
%12 = OpLabel | |
%14 = OpLoad %int %i | |
%16 = OpSLessThan %bool %14 %int_2 | |
%13 = OpLogicalNot %bool %16 | |
OpSelectionMerge %18 None | |
OpBranchConditional %13 %19 %18 | |
%19 = OpLabel | |
OpBranch %10 | |
%18 = OpLabel | |
OpStore %j %6 | |
OpBranch %21 | |
%21 = OpLabel | |
OpLoopMerge %22 %23 None | |
OpBranch %24 | |
%24 = OpLabel | |
%26 = OpLoad %int %j | |
%27 = OpSLessThan %bool %26 %int_2 | |
%25 = OpLogicalNot %bool %27 | |
OpSelectionMerge %28 None | |
OpBranchConditional %25 %29 %28 | |
%29 = OpLabel | |
OpBranch %22 | |
%28 = OpLabel | |
%31 = OpLoad %int %i | |
OpSelectionMerge %30 None | |
OpSwitch %31 %32 0 %33 | |
%33 = OpLabel | |
OpBranch %23 | |
%32 = OpLabel | |
OpBranch %30 | |
%30 = OpLabel | |
OpBranch %23 | |
%23 = OpLabel | |
%34 = OpLoad %int %j | |
%35 = OpIAdd %int %34 %int_2 | |
OpStore %j %35 | |
OpBranch %21 | |
%22 = OpLabel | |
OpBranch %11 | |
%11 = OpLabel | |
%36 = OpLoad %int %i | |
%37 = OpIAdd %int %36 %int_2 | |
OpStore %i %37 | |
OpBranch %9 | |
%10 = OpLabel | |
OpReturn | |
OpFunctionEnd |