SKIP: FAILED

; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 104
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %main "main" %tint_symbol_1
               OpExecutionMode %main OriginUpperLeft
               OpName %x_GLF_global_loop_count "x_GLF_global_loop_count"
               OpName %buf0 "buf0"
               OpMemberName %buf0 0 "x_GLF_uniform_int_values"
               OpName %x_7 "x_7"
               OpName %x_GLF_color "x_GLF_color"
               OpName %tint_symbol_1 "tint_symbol_1"
               OpName %func_ "func_"
               OpName %main_1 "main_1"
               OpName %a "a"
               OpName %main_out "main_out"
               OpMemberName %main_out 0 "x_GLF_color_1"
               OpName %tint_symbol_2 "tint_symbol_2"
               OpName %tint_symbol "tint_symbol"
               OpName %main "main"
               OpDecorate %buf0 Block
               OpMemberDecorate %buf0 0 Offset 0
               OpDecorate %_arr_int_uint_3 ArrayStride 16
               OpDecorate %x_7 NonWritable
               OpDecorate %x_7 DescriptorSet 0
               OpDecorate %x_7 Binding 0
               OpDecorate %tint_symbol_1 Location 0
               OpMemberDecorate %main_out 0 Offset 0
        %int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
          %4 = OpConstantNull %int
%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %4
       %uint = OpTypeInt 32 0
     %uint_3 = OpConstant %uint 3
%_arr_int_uint_3 = OpTypeArray %int %uint_3
       %buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
        %x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
      %float = OpTypeFloat 32
    %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
         %15 = OpConstantNull %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %15
%_ptr_Output_v4float = OpTypePointer Output %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %15
         %18 = OpTypeFunction %int
    %int_100 = OpConstant %int 100
       %bool = OpTypeBool
      %int_1 = OpConstant %int 1
     %uint_0 = OpConstant %uint 0
      %int_0 = OpConstant %int 0
%_ptr_Uniform_int = OpTypePointer Uniform %int
      %int_2 = OpConstant %int 2
       %void = OpTypeVoid
         %43 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
      %false = OpConstantFalse %bool
       %true = OpConstantTrue %bool
   %main_out = OpTypeStruct %v4float
         %92 = OpTypeFunction %void %main_out
      %func_ = OpFunction %int None %18
         %20 = OpLabel
               OpBranch %21
         %21 = OpLabel
               OpLoopMerge %22 %23 None
               OpBranch %24
         %24 = OpLabel
         %25 = OpLoad %int %x_GLF_global_loop_count
         %27 = OpSLessThan %bool %25 %int_100
               OpSelectionMerge %29 None
               OpBranchConditional %27 %30 %31
         %30 = OpLabel
               OpBranch %29
         %31 = OpLabel
               OpBranch %22
         %29 = OpLabel
         %32 = OpLoad %int %x_GLF_global_loop_count
         %34 = OpIAdd %int %32 %int_1
               OpStore %x_GLF_global_loop_count %34
         %38 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_0
         %39 = OpLoad %int %38
               OpReturnValue %39
         %23 = OpLabel
               OpBranch %21
         %22 = OpLabel
         %41 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_2
         %42 = OpLoad %int %41
               OpReturnValue %42
               OpFunctionEnd
     %main_1 = OpFunction %void None %43
         %46 = OpLabel
          %a = OpVariable %_ptr_Function_int Function %4
               OpStore %x_GLF_global_loop_count %int_0
               OpBranch %49
         %49 = OpLabel
               OpLoopMerge %50 %51 None
               OpBranch %52
         %52 = OpLabel
         %53 = OpLoad %int %x_GLF_global_loop_count
         %54 = OpIAdd %int %53 %int_1
               OpStore %x_GLF_global_loop_count %54
               OpSelectionMerge %56 None
               OpBranchConditional %false %57 %56
         %57 = OpLabel
               OpReturn
         %56 = OpLabel
               OpBranch %51
         %51 = OpLabel
         %58 = OpLoad %int %x_GLF_global_loop_count
               OpSelectionMerge %60 None
               OpBranchConditional %true %61 %60
         %61 = OpLabel
         %62 = OpSLessThan %bool %58 %int_100
               OpBranch %60
         %60 = OpLabel
         %63 = OpPhi %bool %true %51 %62 %61
               OpSelectionMerge %64 None
               OpBranchConditional %63 %65 %66
         %65 = OpLabel
               OpBranch %64
         %66 = OpLabel
               OpBranch %50
         %64 = OpLabel
               OpBranch %49
         %50 = OpLabel
         %67 = OpFunctionCall %int %func_
               OpStore %a %67
         %68 = OpLoad %int %a
         %69 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_2
         %70 = OpLoad %int %69
         %71 = OpIEqual %bool %68 %70
               OpSelectionMerge %72 None
               OpBranchConditional %71 %73 %74
         %73 = OpLabel
         %75 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_0
         %76 = OpLoad %int %75
         %77 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_1
         %78 = OpLoad %int %77
         %79 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_1
         %80 = OpLoad %int %79
         %81 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_0
         %82 = OpLoad %int %81
         %83 = OpConvertSToF %float %76
         %84 = OpConvertSToF %float %78
         %85 = OpConvertSToF %float %80
         %86 = OpConvertSToF %float %82
         %87 = OpCompositeConstruct %v4float %83 %84 %85 %86
               OpStore %x_GLF_color %87
               OpBranch %72
         %74 = OpLabel
         %88 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_1
         %89 = OpLoad %int %88
         %90 = OpConvertSToF %float %89
         %91 = OpCompositeConstruct %v4float %90 %90 %90 %90
               OpStore %x_GLF_color %91
               OpBranch %72
         %72 = OpLabel
               OpReturn
               OpFunctionEnd
%tint_symbol_2 = OpFunction %void None %92
%tint_symbol = OpFunctionParameter %main_out
         %96 = OpLabel
         %97 = OpCompositeExtract %v4float %tint_symbol 0
               OpStore %tint_symbol_1 %97
               OpReturn
               OpFunctionEnd
       %main = OpFunction %void None %43
         %99 = OpLabel
        %100 = OpFunctionCall %void %main_1
        %102 = OpLoad %v4float %x_GLF_color
        %103 = OpCompositeConstruct %main_out %102
        %101 = OpFunctionCall %void %tint_symbol_2 %103
               OpReturn
               OpFunctionEnd
1:1: The continue construct with the continue target 51[%51] is not post dominated by the back-edge block 64[%64]
  %64 = OpLabel

