; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 42
; Schema: 0
               OpCapability Shader
               OpCapability SampleRateShading
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %main "main" %x_1_1_1 %x_2_1_1 %x_3_1_1 %x_4_1_1 %x_5_1_1 %x_6_1_1
               OpExecutionMode %main OriginUpperLeft
               OpName %x_1_1_1 "x_1_1_1"
               OpName %x_2_1_1 "x_2_1_1"
               OpName %x_3_1_1 "x_3_1_1"
               OpName %x_4_1_1 "x_4_1_1"
               OpName %x_5_1_1 "x_5_1_1"
               OpName %x_6_1_1 "x_6_1_1"
               OpName %x_1 "x_1"
               OpName %x_2 "x_2"
               OpName %x_3 "x_3"
               OpName %x_4 "x_4"
               OpName %x_5 "x_5"
               OpName %x_6 "x_6"
               OpName %main_1 "main_1"
               OpName %main_out "main_out"
               OpMemberName %main_out 0 "x_1_1"
               OpMemberName %main_out 1 "x_2_1"
               OpMemberName %main_out 2 "x_3_1"
               OpMemberName %main_out 3 "x_4_1"
               OpMemberName %main_out 4 "x_5_1"
               OpMemberName %main_out 5 "x_6_1"
               OpName %main_inner "main_inner"
               OpName %main "main"
               OpDecorate %x_1_1_1 Location 1
               OpDecorate %x_2_1_1 Location 2
               OpDecorate %x_2_1_1 Centroid
               OpDecorate %x_3_1_1 Location 3
               OpDecorate %x_3_1_1 Sample
               OpDecorate %x_4_1_1 Location 4
               OpDecorate %x_4_1_1 NoPerspective
               OpDecorate %x_5_1_1 Location 5
               OpDecorate %x_5_1_1 NoPerspective
               OpDecorate %x_5_1_1 Centroid
               OpDecorate %x_6_1_1 Location 6
               OpDecorate %x_6_1_1 NoPerspective
               OpDecorate %x_6_1_1 Sample
               OpMemberDecorate %main_out 0 Offset 0
               OpMemberDecorate %main_out 1 Offset 4
               OpMemberDecorate %main_out 2 Offset 8
               OpMemberDecorate %main_out 3 Offset 12
               OpMemberDecorate %main_out 4 Offset 16
               OpMemberDecorate %main_out 5 Offset 20
      %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
          %4 = OpConstantNull %float
    %x_1_1_1 = OpVariable %_ptr_Output_float Output %4
    %x_2_1_1 = OpVariable %_ptr_Output_float Output %4
    %x_3_1_1 = OpVariable %_ptr_Output_float Output %4
    %x_4_1_1 = OpVariable %_ptr_Output_float Output %4
    %x_5_1_1 = OpVariable %_ptr_Output_float Output %4
    %x_6_1_1 = OpVariable %_ptr_Output_float Output %4
%_ptr_Private_float = OpTypePointer Private %float
        %x_1 = OpVariable %_ptr_Private_float Private %4
        %x_2 = OpVariable %_ptr_Private_float Private %4
        %x_3 = OpVariable %_ptr_Private_float Private %4
        %x_4 = OpVariable %_ptr_Private_float Private %4
        %x_5 = OpVariable %_ptr_Private_float Private %4
        %x_6 = OpVariable %_ptr_Private_float Private %4
       %void = OpTypeVoid
         %17 = OpTypeFunction %void
   %main_out = OpTypeStruct %float %float %float %float %float %float
         %21 = OpTypeFunction %main_out
     %main_1 = OpFunction %void None %17
         %20 = OpLabel
               OpReturn
               OpFunctionEnd
 %main_inner = OpFunction %main_out None %21
         %24 = OpLabel
         %25 = OpFunctionCall %void %main_1
         %26 = OpLoad %float %x_1
         %27 = OpLoad %float %x_2
         %28 = OpLoad %float %x_3
         %29 = OpLoad %float %x_4
         %30 = OpLoad %float %x_5
         %31 = OpLoad %float %x_6
         %32 = OpCompositeConstruct %main_out %26 %27 %28 %29 %30 %31
               OpReturnValue %32
               OpFunctionEnd
       %main = OpFunction %void None %17
         %34 = OpLabel
         %35 = OpFunctionCall %main_out %main_inner
         %36 = OpCompositeExtract %float %35 0
               OpStore %x_1_1_1 %36
         %37 = OpCompositeExtract %float %35 1
               OpStore %x_2_1_1 %37
         %38 = OpCompositeExtract %float %35 2
               OpStore %x_3_1_1 %38
         %39 = OpCompositeExtract %float %35 3
               OpStore %x_4_1_1 %39
         %40 = OpCompositeExtract %float %35 4
               OpStore %x_5_1_1 %40
         %41 = OpCompositeExtract %float %35 5
               OpStore %x_6_1_1 %41
               OpReturn
               OpFunctionEnd
