; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 57
; Schema: 0
               OpCapability Shader
               OpCapability SampleRateShading
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %main "main" %position_1 %loc0_1 %front_facing_1 %loc1_1 %sample_index_1 %loc3_1 %sample_mask_1 %loc2_1
               OpExecutionMode %main OriginUpperLeft
               OpName %position_1 "position_1"
               OpName %loc0_1 "loc0_1"
               OpName %front_facing_1 "front_facing_1"
               OpName %loc1_1 "loc1_1"
               OpName %sample_index_1 "sample_index_1"
               OpName %loc3_1 "loc3_1"
               OpName %sample_mask_1 "sample_mask_1"
               OpName %loc2_1 "loc2_1"
               OpName %FragmentInputs0 "FragmentInputs0"
               OpMemberName %FragmentInputs0 0 "position"
               OpMemberName %FragmentInputs0 1 "loc0"
               OpName %FragmentInputs1 "FragmentInputs1"
               OpMemberName %FragmentInputs1 0 "loc3"
               OpMemberName %FragmentInputs1 1 "sample_mask"
               OpName %main_inner "main_inner"
               OpName %inputs0 "inputs0"
               OpName %front_facing "front_facing"
               OpName %loc1 "loc1"
               OpName %sample_index "sample_index"
               OpName %inputs1 "inputs1"
               OpName %loc2 "loc2"
               OpName %main "main"
               OpDecorate %position_1 BuiltIn FragCoord
               OpDecorate %loc0_1 Location 0
               OpDecorate %loc0_1 Flat
               OpDecorate %front_facing_1 BuiltIn FrontFacing
               OpDecorate %loc1_1 Location 1
               OpDecorate %loc1_1 Flat
               OpDecorate %sample_index_1 BuiltIn SampleId
               OpDecorate %sample_index_1 Flat
               OpDecorate %loc3_1 Location 3
               OpDecorate %_arr_uint_uint_1 ArrayStride 4
               OpDecorate %sample_mask_1 BuiltIn SampleMask
               OpDecorate %sample_mask_1 Flat
               OpDecorate %loc2_1 Location 2
               OpMemberDecorate %FragmentInputs0 0 Offset 0
               OpMemberDecorate %FragmentInputs0 1 Offset 16
               OpMemberDecorate %FragmentInputs1 0 Offset 0
               OpMemberDecorate %FragmentInputs1 1 Offset 16
      %float = OpTypeFloat 32
    %v4float = OpTypeVector %float 4
%_ptr_Input_v4float = OpTypePointer Input %v4float
 %position_1 = OpVariable %_ptr_Input_v4float Input
        %int = OpTypeInt 32 1
%_ptr_Input_int = OpTypePointer Input %int
     %loc0_1 = OpVariable %_ptr_Input_int Input
       %bool = OpTypeBool
%_ptr_Input_bool = OpTypePointer Input %bool
%front_facing_1 = OpVariable %_ptr_Input_bool Input
       %uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
     %loc1_1 = OpVariable %_ptr_Input_uint Input
%sample_index_1 = OpVariable %_ptr_Input_uint Input
     %loc3_1 = OpVariable %_ptr_Input_v4float Input
     %uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
%_ptr_Input__arr_uint_uint_1 = OpTypePointer Input %_arr_uint_uint_1
%sample_mask_1 = OpVariable %_ptr_Input__arr_uint_uint_1 Input
%_ptr_Input_float = OpTypePointer Input %float
     %loc2_1 = OpVariable %_ptr_Input_float Input
       %void = OpTypeVoid
%FragmentInputs0 = OpTypeStruct %v4float %int
%FragmentInputs1 = OpTypeStruct %v4float %uint
         %22 = OpTypeFunction %void %FragmentInputs0 %bool %uint %uint %FragmentInputs1 %float
         %41 = OpTypeFunction %void
         %52 = OpConstantNull %int
 %main_inner = OpFunction %void None %22
    %inputs0 = OpFunctionParameter %FragmentInputs0
%front_facing = OpFunctionParameter %bool
       %loc1 = OpFunctionParameter %uint
%sample_index = OpFunctionParameter %uint
    %inputs1 = OpFunctionParameter %FragmentInputs1
       %loc2 = OpFunctionParameter %float
         %33 = OpLabel
               OpSelectionMerge %34 None
               OpBranchConditional %front_facing %35 %34
         %35 = OpLabel
         %36 = OpCompositeExtract %v4float %inputs0 0
         %37 = OpCompositeExtract %uint %inputs1 1
         %38 = OpIAdd %uint %sample_index %37
         %39 = OpCompositeExtract %int %inputs0 1
         %40 = OpCompositeExtract %v4float %inputs1 0
               OpBranch %34
         %34 = OpLabel
               OpReturn
               OpFunctionEnd
       %main = OpFunction %void None %41
         %43 = OpLabel
         %45 = OpLoad %v4float %position_1
         %46 = OpLoad %int %loc0_1
         %47 = OpCompositeConstruct %FragmentInputs0 %45 %46
         %48 = OpLoad %bool %front_facing_1
         %49 = OpLoad %uint %loc1_1
         %50 = OpLoad %uint %sample_index_1
         %51 = OpLoad %v4float %loc3_1
         %53 = OpAccessChain %_ptr_Input_uint %sample_mask_1 %52
         %54 = OpLoad %uint %53
         %55 = OpCompositeConstruct %FragmentInputs1 %51 %54
         %56 = OpLoad %float %loc2_1
         %44 = OpFunctionCall %void %main_inner %47 %48 %49 %50 %55 %56
               OpReturn
               OpFunctionEnd