; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 20
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %main "main"
               OpExecutionMode %main OriginUpperLeft
               OpName %main_1 "main_1"
               OpName %S "S"
               OpMemberName %S 0 "field0"
               OpMemberName %S 1 "field1"
               OpMemberName %S 2 "field2"
               OpName %x_200 "x_200"
               OpName %main "main"
               OpMemberDecorate %S 0 Offset 0
               OpMemberDecorate %S 1 Offset 4
               OpMemberDecorate %S 2 Offset 8
               OpDecorate %_arr_uint_uint_2 ArrayStride 4
       %void = OpTypeVoid
          %1 = OpTypeFunction %void
       %uint = OpTypeInt 32 0
      %float = OpTypeFloat 32
     %uint_2 = OpConstant %uint 2
%_arr_uint_uint_2 = OpTypeArray %uint %uint_2
          %S = OpTypeStruct %uint %float %_arr_uint_uint_2
     %uint_0 = OpConstant %uint 0
    %float_0 = OpConstant %float 0
         %12 = OpConstantComposite %_arr_uint_uint_2 %uint_0 %uint_0
         %13 = OpConstantComposite %S %uint_0 %float_0 %12
%_ptr_Function_S = OpTypePointer Function %S
         %16 = OpConstantNull %S
     %main_1 = OpFunction %void None %1
          %4 = OpLabel
      %x_200 = OpVariable %_ptr_Function_S Function %16
               OpStore %x_200 %13
               OpReturn
               OpFunctionEnd
       %main = OpFunction %void None %1
         %18 = OpLabel
         %19 = OpFunctionCall %void %main_1
               OpReturn
               OpFunctionEnd
