SKIP: FAILED

<dawn>/src/tint/lang/msl/writer/printer/printer.cc:469 internal compiler error: %b1 = block {  # root
  %arg_0:ptr<handle, texture_2d_array<f32>, read> = var @binding_point(1, 0)
  %arg_1:ptr<handle, sampler, read> = var @binding_point(1, 1)
  %prevent_dce:ptr<storage, vec4<f32>, read_write> = var @binding_point(2, 0)
}

%textureSampleBias_80e579 = func():void -> %b2 {
  %b2 = block {
    %arg_2:ptr<function, vec2<f32>, read_write> = var, vec2<f32>(1.0f)
    %arg_3:ptr<function, i32, read_write> = var, 1i
    %arg_4:ptr<function, f32, read_write> = var, 1.0f
    %8:texture_2d_array<f32> = load %arg_0
    %9:sampler = load %arg_1
    %10:vec2<f32> = load %arg_2
    %11:i32 = load %arg_3
    %12:f32 = load %arg_4
    %13:vec4<f32> = textureSampleBias %8, %9, %10, %11, %12
    %res:ptr<function, vec4<f32>, read_write> = var, %13
    %15:vec4<f32> = load %res
    store %prevent_dce, %15
    ret
  }
}
%fragment_main = @fragment func():void -> %b3 {
  %b3 = block {
    %17:void = call %textureSampleBias_80e579
    ret
  }
}

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.  *
********************************************************************
