SKIP: FAILED

../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: buf0 = struct @align(8) {
  resolution:vec2<f32> @offset(0)
}

main_out = struct @align(16) {
  x_GLF_color_1:vec4<f32> @offset(0), @location(0)
}

$B1: {  # root
  %gl_FragCoord:ptr<private, vec4<f32>, read_write> = var
  %x_13:ptr<uniform, buf0, read> = var @binding_point(0, 0)
  %x_GLF_color:ptr<private, vec4<f32>, read_write> = var
}

%trace_vi2_ = func(%pos:ptr<function, vec2<i32>, read_write>):vec4<f32> {
  $B2: {
    %indexable:ptr<function, array<i32, 256>, read_write> = var
    %indexable_1:ptr<function, array<i32, 256>, read_write> = var
    %p:ptr<function, f32, read_write> = var
    %indexable_2:ptr<function, array<i32, 256>, read_write> = var
    loop [b: $B3, c: $B4] {  # loop_1
      $B3: {  # body
        %x_247:ptr<function, bool, read_write> = var
        %x_248_phi:ptr<function, bool, read_write> = var
        %12:i32 = load_vector_element %pos, 1u
        %x_227:i32 = let %12
        %14:bool = neq %x_227, 256i
        if %14 [t: $B5, f: $B6] {  # if_1
          $B5: {  # true
            exit_if  # if_1
          }
          $B6: {  # false
            exit_loop  # loop_1
          }
        }
        %15:i32 = load_vector_element %pos, 0u
        %x_231:i32 = let %15
        %17:i32 = load_vector_element %pos, 1u
        %x_233:i32 = let %17
        store %indexable, array<i32, 256>(115i, 133i, 150i, 164i, 176i, 184i, 190i, 192i, 191i, 187i, 181i, 172i, 163i, 153i, 143i, 134i, 126i, 120i, 116i, 114i, 114i, 117i, 121i, 127i, 134i, 141i, 148i, 154i, 159i, 162i, 163i, 161i, 157i, 151i, 143i, 134i, 124i, 113i, 103i, 94i, 87i, 82i, 79i, 80i, 84i, 91i, 101i, 114i, 130i, 146i, 164i, 182i, 199i, 215i, 229i, 240i, 249i, 254i, 256i, 254i, 250i, 243i, 233i, 223i, 212i, 200i, 190i, 180i, 172i, 166i, 163i, 161i, 162i, 164i, 169i, 174i, 179i, 185i, 190i, 193i, 195i, 195i, 192i, 188i, 180i, 171i, 161i, 149i, 137i, 125i, 114i, 105i, 97i, 93i, 91i, 93i, 98i, 106i, 117i, 130i, 145i, 161i, 177i, 193i, 208i, 221i, 231i, 239i, 243i, 244i, 242i, 236i, 228i, 218i, 207i, 194i, 181i, 169i, 158i, 148i, 141i, 135i, 132i, 131i, 132i, 135i, 138i, 143i, 147i, 151i, 154i, 155i, 155i, 152i, 146i, 139i, 129i, 118i, 106i, 93i, 80i, 68i, 58i, 49i, 43i, 40i, 41i, 44i, 51i, 61i, 73i, 87i, 103i, 119i, 134i, 149i, 162i, 173i, 181i, 186i, 188i, 186i, 181i, 174i, 164i, 153i, 141i, 128i, 116i, 104i, 94i, 86i, 81i, 77i, 76i, 77i, 80i, 84i, 89i, 94i, 98i, 102i, 104i, 104i, 102i, 98i, 92i, 83i, 73i, 62i, 50i, 38i, 26i, 16i, 8i, 2i, 0i, 0i, 4i, 11i, 21i, 33i, 48i, 64i, 81i, 98i, 114i, 129i, 141i, 151i, 158i, 161i, 161i, 158i, 152i, 144i, 134i, 123i, 112i, 100i, 90i, 81i, 73i, 68i, 65i, 65i, 67i, 70i, 75i, 81i, 87i, 92i, 97i, 101i, 103i, 102i, 100i, 95i, 88i, 79i, 69i, 58i, 47i, 36i, 26i, 18i, 13i, 11i, 11i, 15i, 22i, 32i, 45i, 60i, 77i, 94i)
        %19:ptr<function, i32, read_write> = access %indexable, %x_233
        %20:i32 = load %19
        %x_235:i32 = let %20
        %22:i32 = add %x_235, 15i
        %23:bool = lt %x_231, %22
        %x_237:bool = let %23
        store %x_248_phi, %x_237
        if %x_237 [t: $B7] {  # if_2
          $B7: {  # true
            %25:i32 = load_vector_element %pos, 0u
            %x_241:i32 = let %25
            %27:i32 = load_vector_element %pos, 1u
            %x_243:i32 = let %27
            store %indexable_1, array<i32, 256>(115i, 133i, 150i, 164i, 176i, 184i, 190i, 192i, 191i, 187i, 181i, 172i, 163i, 153i, 143i, 134i, 126i, 120i, 116i, 114i, 114i, 117i, 121i, 127i, 134i, 141i, 148i, 154i, 159i, 162i, 163i, 161i, 157i, 151i, 143i, 134i, 124i, 113i, 103i, 94i, 87i, 82i, 79i, 80i, 84i, 91i, 101i, 114i, 130i, 146i, 164i, 182i, 199i, 215i, 229i, 240i, 249i, 254i, 256i, 254i, 250i, 243i, 233i, 223i, 212i, 200i, 190i, 180i, 172i, 166i, 163i, 161i, 162i, 164i, 169i, 174i, 179i, 185i, 190i, 193i, 195i, 195i, 192i, 188i, 180i, 171i, 161i, 149i, 137i, 125i, 114i, 105i, 97i, 93i, 91i, 93i, 98i, 106i, 117i, 130i, 145i, 161i, 177i, 193i, 208i, 221i, 231i, 239i, 243i, 244i, 242i, 236i, 228i, 218i, 207i, 194i, 181i, 169i, 158i, 148i, 141i, 135i, 132i, 131i, 132i, 135i, 138i, 143i, 147i, 151i, 154i, 155i, 155i, 152i, 146i, 139i, 129i, 118i, 106i, 93i, 80i, 68i, 58i, 49i, 43i, 40i, 41i, 44i, 51i, 61i, 73i, 87i, 103i, 119i, 134i, 149i, 162i, 173i, 181i, 186i, 188i, 186i, 181i, 174i, 164i, 153i, 141i, 128i, 116i, 104i, 94i, 86i, 81i, 77i, 76i, 77i, 80i, 84i, 89i, 94i, 98i, 102i, 104i, 104i, 102i, 98i, 92i, 83i, 73i, 62i, 50i, 38i, 26i, 16i, 8i, 2i, 0i, 0i, 4i, 11i, 21i, 33i, 48i, 64i, 81i, 98i, 114i, 129i, 141i, 151i, 158i, 161i, 161i, 158i, 152i, 144i, 134i, 123i, 112i, 100i, 90i, 81i, 73i, 68i, 65i, 65i, 67i, 70i, 75i, 81i, 87i, 92i, 97i, 101i, 103i, 102i, 100i, 95i, 88i, 79i, 69i, 58i, 47i, 36i, 26i, 18i, 13i, 11i, 11i, 15i, 22i, 32i, 45i, 60i, 77i, 94i)
            %29:ptr<function, i32, read_write> = access %indexable_1, %x_243
            %30:i32 = load %29
            %x_245:i32 = let %30
            %32:i32 = sub %x_245, 15i
            %33:bool = gt %x_241, %32
            store %x_247, %33
            %34:bool = load %x_247
            store %x_248_phi, %34
            exit_if  # if_2
          }
        }
        %35:bool = load %x_248_phi
        %x_248:bool = let %35
        if %x_248 [t: $B8] {  # if_3
          $B8: {  # true
            %37:i32 = load_vector_element %pos, 0u
            %x_252:i32 = let %37
            %39:i32 = load_vector_element %pos, 1u
            %x_254:i32 = let %39
            store %indexable_2, array<i32, 256>(115i, 133i, 150i, 164i, 176i, 184i, 190i, 192i, 191i, 187i, 181i, 172i, 163i, 153i, 143i, 134i, 126i, 120i, 116i, 114i, 114i, 117i, 121i, 127i, 134i, 141i, 148i, 154i, 159i, 162i, 163i, 161i, 157i, 151i, 143i, 134i, 124i, 113i, 103i, 94i, 87i, 82i, 79i, 80i, 84i, 91i, 101i, 114i, 130i, 146i, 164i, 182i, 199i, 215i, 229i, 240i, 249i, 254i, 256i, 254i, 250i, 243i, 233i, 223i, 212i, 200i, 190i, 180i, 172i, 166i, 163i, 161i, 162i, 164i, 169i, 174i, 179i, 185i, 190i, 193i, 195i, 195i, 192i, 188i, 180i, 171i, 161i, 149i, 137i, 125i, 114i, 105i, 97i, 93i, 91i, 93i, 98i, 106i, 117i, 130i, 145i, 161i, 177i, 193i, 208i, 221i, 231i, 239i, 243i, 244i, 242i, 236i, 228i, 218i, 207i, 194i, 181i, 169i, 158i, 148i, 141i, 135i, 132i, 131i, 132i, 135i, 138i, 143i, 147i, 151i, 154i, 155i, 155i, 152i, 146i, 139i, 129i, 118i, 106i, 93i, 80i, 68i, 58i, 49i, 43i, 40i, 41i, 44i, 51i, 61i, 73i, 87i, 103i, 119i, 134i, 149i, 162i, 173i, 181i, 186i, 188i, 186i, 181i, 174i, 164i, 153i, 141i, 128i, 116i, 104i, 94i, 86i, 81i, 77i, 76i, 77i, 80i, 84i, 89i, 94i, 98i, 102i, 104i, 104i, 102i, 98i, 92i, 83i, 73i, 62i, 50i, 38i, 26i, 16i, 8i, 2i, 0i, 0i, 4i, 11i, 21i, 33i, 48i, 64i, 81i, 98i, 114i, 129i, 141i, 151i, 158i, 161i, 161i, 158i, 152i, 144i, 134i, 123i, 112i, 100i, 90i, 81i, 73i, 68i, 65i, 65i, 67i, 70i, 75i, 81i, 87i, 92i, 97i, 101i, 103i, 102i, 100i, 95i, 88i, 79i, 69i, 58i, 47i, 36i, 26i, 18i, 13i, 11i, 11i, 15i, 22i, 32i, 45i, 60i, 77i, 94i)
            %41:ptr<function, i32, read_write> = access %indexable_2, %x_254
            %42:i32 = load %41
            %x_256:i32 = let %42
            %44:i32 = sub %x_252, %x_256
            %45:f32 = convert %44
            %46:f32 = abs %45
            %47:f32 = sub 15.0f, %46
            %48:f32 = div %47, 15.0f
            store %p, %48
            %49:f32 = load %p
            %x_262:f32 = let %49
            %51:f32 = load %p
            %x_263:f32 = let %51
            %53:f32 = load %p
            %x_264:f32 = let %53
            %55:vec4<f32> = construct %x_262, %x_263, %x_264, 1.0f
            ret %55
          }
        }
        %56:i32 = load_vector_element %pos, 1u
        %x_267:i32 = let %56
        %58:i32 = add %x_267, 1i
        store_vector_element %pos, 1u, %58
        continue  # -> $B4
      }
      $B4: {  # continuing
        next_iteration  # -> $B3
      }
    }
    ret vec4<f32>(0.0f, 0.0f, 0.0f, 1.0f)
  }
}
%main_1 = func():void {
  $B9: {
    %pos_1:ptr<function, vec2<f32>, read_write> = var
    %ipos:ptr<function, vec2<i32>, read_write> = var
    %param:ptr<function, vec2<i32>, read_write> = var
    %63:vec4<f32> = load %gl_FragCoord
    %x_205:vec4<f32> = let %63
    %65:ptr<uniform, vec2<f32>, read> = access %x_13, 0u
    %66:vec2<f32> = load %65
    %x_208:vec2<f32> = let %66
    %68:f32 = access %x_205, 0u
    %69:f32 = access %x_205, 1u
    %70:vec2<f32> = construct %68, %69
    %71:vec2<f32> = div %70, %x_208
    store %pos_1, %71
    %72:f32 = load_vector_element %pos_1, 0u
    %x_211:f32 = let %72
    %74:f32 = load_vector_element %pos_1, 1u
    %x_215:f32 = let %74
    %76:f32 = mul %x_211, 256.0f
    %77:i32 = call %tint_f32_to_i32, %76
    %79:i32 = let %77
    %80:f32 = mul %x_215, 256.0f
    %81:i32 = call %tint_f32_to_i32, %80
    %82:vec2<i32> = construct %79, %81
    store %ipos, %82
    %83:vec2<i32> = load %ipos
    %x_219:vec2<i32> = let %83
    store %param, %x_219
    %85:vec4<f32> = call %trace_vi2_, %param
    %x_220:vec4<f32> = let %85
    store %x_GLF_color, %x_220
    ret
  }
}
%tint_symbol = @fragment func(%gl_FragCoord_param:vec4<f32> [@position]):main_out {
  $B10: {
    store %gl_FragCoord, %gl_FragCoord_param
    %89:void = call %main_1
    %90:vec4<f32> = load %x_GLF_color
    %91:main_out = construct %90
    ret %91
  }
}
%tint_f32_to_i32 = func(%value:f32):i32 {
  $B11: {
    %93:i32 = convert %value
    %94:bool = gte %value, -2147483648.0f
    %95:i32 = select -2147483648i, %93, %94
    %96:bool = lte %value, 2147483520.0f
    %97:i32 = select 2147483647i, %95, %96
    ret %97
  }
}

unhandled variable address space
********************************************************************
*  The tint shader compiler has encountered an unexpected error.   *
*                                                                  *
*  Please help us fix this issue by submitting a bug report at     *
*  crbug.com/tint with the source program that triggered the bug.  *
********************************************************************
