; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 44
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint GLCompute %main "main"
               OpExecutionMode %main LocalSize 1 1 1
               OpName %uniforms_block "uniforms_block"
               OpMemberName %uniforms_block 0 "inner"
               OpName %Uniforms "Uniforms"
               OpMemberName %Uniforms 0 "i"
               OpName %uniforms "uniforms"
               OpName %main "main"
               OpName %InnerS "InnerS"
               OpMemberName %InnerS 0 "v"
               OpName %v "v"
               OpName %OuterS "OuterS"
               OpMemberName %OuterS 0 "a1"
               OpName %s1 "s1"
               OpName %i "i"
               OpDecorate %uniforms_block Block
               OpMemberDecorate %uniforms_block 0 Offset 0
               OpMemberDecorate %Uniforms 0 Offset 0
               OpDecorate %uniforms NonWritable
               OpDecorate %uniforms DescriptorSet 1
               OpDecorate %uniforms Binding 4
               OpMemberDecorate %InnerS 0 Offset 0
               OpMemberDecorate %OuterS 0 Offset 0
               OpDecorate %_arr_InnerS_uint_8 ArrayStride 4
       %uint = OpTypeInt 32 0
   %Uniforms = OpTypeStruct %uint
%uniforms_block = OpTypeStruct %Uniforms
%_ptr_Uniform_uniforms_block = OpTypePointer Uniform %uniforms_block
   %uniforms = OpVariable %_ptr_Uniform_uniforms_block Uniform
       %void = OpTypeVoid
          %6 = OpTypeFunction %void
        %int = OpTypeInt 32 1
     %InnerS = OpTypeStruct %int
%_ptr_Function_InnerS = OpTypePointer Function %InnerS
         %14 = OpConstantNull %InnerS
     %uint_8 = OpConstant %uint 8
%_arr_InnerS_uint_8 = OpTypeArray %InnerS %uint_8
     %OuterS = OpTypeStruct %_arr_InnerS_uint_8
%_ptr_Function_OuterS = OpTypePointer Function %OuterS
         %20 = OpConstantNull %OuterS
         %21 = OpConstantNull %int
%_ptr_Function_int = OpTypePointer Function %int
      %int_4 = OpConstant %int 4
       %bool = OpTypeBool
      %int_1 = OpConstant %int 1
     %uint_0 = OpConstant %uint 0
%_ptr_Uniform_uint = OpTypePointer Uniform %uint
       %main = OpFunction %void None %6
          %9 = OpLabel
          %v = OpVariable %_ptr_Function_InnerS Function %14
         %s1 = OpVariable %_ptr_Function_OuterS Function %20
          %i = OpVariable %_ptr_Function_int Function %21
               OpStore %i %21
               OpBranch %24
         %24 = OpLabel
               OpLoopMerge %25 %26 None
               OpBranch %27
         %27 = OpLabel
         %29 = OpLoad %int %i
         %31 = OpSLessThan %bool %29 %int_4
         %28 = OpLogicalNot %bool %31
               OpSelectionMerge %33 None
               OpBranchConditional %28 %34 %33
         %34 = OpLabel
               OpBranch %25
         %33 = OpLabel
         %35 = OpLoad %int %i
         %37 = OpIAdd %int %35 %int_1
               OpStore %i %37
               OpBranch %26
         %26 = OpLabel
         %40 = OpAccessChain %_ptr_Uniform_uint %uniforms %uint_0 %uint_0
         %41 = OpLoad %uint %40
         %42 = OpAccessChain %_ptr_Function_InnerS %s1 %uint_0 %41
         %43 = OpLoad %InnerS %v
               OpStore %42 %43
               OpBranch %24
         %25 = OpLabel
               OpReturn
               OpFunctionEnd
