SKIP: FAILED

; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 107
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %main "main" %tint_symbol_1
               OpExecutionMode %main OriginUpperLeft
               OpName %x_GLF_color "x_GLF_color"
               OpName %buf0 "buf0"
               OpMemberName %buf0 0 "x_GLF_uniform_float_values"
               OpName %x_5 "x_5"
               OpName %buf1 "buf1"
               OpMemberName %buf1 0 "x_GLF_uniform_int_values"
               OpName %x_8 "x_8"
               OpName %tint_symbol_1 "tint_symbol_1"
               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_float_uint_2 ArrayStride 16
               OpDecorate %x_5 NonWritable
               OpDecorate %x_5 DescriptorSet 0
               OpDecorate %x_5 Binding 0
               OpDecorate %buf1 Block
               OpMemberDecorate %buf1 0 Offset 0
               OpDecorate %_arr_int_uint_2 ArrayStride 16
               OpDecorate %x_8 NonWritable
               OpDecorate %x_8 DescriptorSet 0
               OpDecorate %x_8 Binding 1
               OpDecorate %tint_symbol_1 Location 0
               OpMemberDecorate %main_out 0 Offset 0
      %float = OpTypeFloat 32
    %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
          %5 = OpConstantNull %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
       %uint = OpTypeInt 32 0
     %uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
       %buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
        %x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
        %int = OpTypeInt 32 1
%_arr_int_uint_2 = OpTypeArray %int %uint_2
       %buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
        %x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
%_ptr_Output_v4float = OpTypePointer Output %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
       %void = OpTypeVoid
         %19 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
         %25 = OpConstantNull %float
     %uint_0 = OpConstant %uint 0
      %int_1 = OpConstant %int 1
%_ptr_Uniform_float = OpTypePointer Uniform %float
      %int_0 = OpConstant %int 0
%float_0_200000003 = OpConstant %float 0.200000003
       %bool = OpTypeBool
    %float_0 = OpConstant %float 0
%_ptr_Uniform_int = OpTypePointer Uniform %int
   %main_out = OpTypeStruct %v4float
         %95 = OpTypeFunction %void %main_out
     %main_1 = OpFunction %void None %19
         %22 = OpLabel
          %a = OpVariable %_ptr_Function_float Function %25
         %29 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_1
         %30 = OpLoad %float %29
         %31 = OpCompositeConstruct %v4float %30 %30 %30 %30
               OpStore %x_GLF_color %31
         %33 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
         %34 = OpLoad %float %33
               OpStore %a %34
               OpBranch %35
         %35 = OpLabel
               OpLoopMerge %36 %37 None
               OpBranch %38
         %38 = OpLabel
         %39 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
         %40 = OpLoad %float %39
         %41 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
         %42 = OpLoad %float %41
         %44 = OpFDiv %float %40 %float_0_200000003
         %45 = OpFOrdLessThan %bool %44 %42
               OpSelectionMerge %47 None
               OpBranchConditional %45 %48 %47
         %48 = OpLabel
               OpReturn
         %47 = OpLabel
         %49 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
         %50 = OpLoad %float %49
         %51 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
         %52 = OpLoad %float %51
         %53 = OpFDiv %float %50 %float_0_200000003
         %54 = OpFOrdLessThan %bool %53 %52
               OpSelectionMerge %55 None
               OpBranchConditional %54 %56 %55
         %56 = OpLabel
               OpReturn
         %55 = OpLabel
         %57 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
         %58 = OpLoad %float %57
         %59 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
         %60 = OpLoad %float %59
         %61 = OpFDiv %float %58 %float_0_200000003
         %62 = OpFOrdLessThan %bool %61 %60
               OpSelectionMerge %63 None
               OpBranchConditional %62 %64 %63
         %64 = OpLabel
               OpReturn
         %63 = OpLabel
         %65 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
         %66 = OpLoad %float %65
         %67 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
         %68 = OpLoad %float %67
         %69 = OpFDiv %float %66 %float_0_200000003
         %70 = OpFOrdLessThan %bool %69 %68
               OpSelectionMerge %71 None
               OpBranchConditional %70 %72 %73
         %72 = OpLabel
               OpReturn
         %73 = OpLabel
               OpStore %a %float_0
               OpBranch %71
         %71 = OpLabel
               OpBranch %37
         %37 = OpLabel
         %75 = OpLoad %float %a
         %77 = OpFOrdEqual %bool %75 %float_0
         %76 = OpLogicalNot %bool %77
               OpSelectionMerge %78 None
               OpBranchConditional %76 %79 %80
         %79 = OpLabel
               OpBranch %78
         %80 = OpLabel
               OpBranch %36
         %78 = OpLabel
               OpBranch %35
         %36 = OpLabel
         %82 = OpAccessChain %_ptr_Uniform_int %x_8 %uint_0 %int_1
         %83 = OpLoad %int %82
         %84 = OpAccessChain %_ptr_Uniform_int %x_8 %uint_0 %int_0
         %85 = OpLoad %int %84
         %86 = OpAccessChain %_ptr_Uniform_int %x_8 %uint_0 %int_0
         %87 = OpLoad %int %86
         %88 = OpAccessChain %_ptr_Uniform_int %x_8 %uint_0 %int_1
         %89 = OpLoad %int %88
         %90 = OpConvertSToF %float %83
         %91 = OpConvertSToF %float %85
         %92 = OpConvertSToF %float %87
         %93 = OpConvertSToF %float %89
         %94 = OpCompositeConstruct %v4float %90 %91 %92 %93
               OpStore %x_GLF_color %94
               OpReturn
               OpFunctionEnd
%tint_symbol_2 = OpFunction %void None %95
%tint_symbol = OpFunctionParameter %main_out
         %99 = OpLabel
        %100 = OpCompositeExtract %v4float %tint_symbol 0
               OpStore %tint_symbol_1 %100
               OpReturn
               OpFunctionEnd
       %main = OpFunction %void None %19
        %102 = OpLabel
        %103 = OpFunctionCall %void %main_1
        %105 = OpLoad %v4float %x_GLF_color
        %106 = OpCompositeConstruct %main_out %105
        %104 = OpFunctionCall %void %tint_symbol_2 %106
               OpReturn
               OpFunctionEnd
1:1: The continue construct with the continue target 37[%37] is not post dominated by the back-edge block 78[%78]
  %78 = OpLabel

