SKIP: FAILED

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

%textureSampleCompare_3a5923 = func():void -> %b2 {
  %b2 = block {
    %arg_2:ptr<function, vec2<f32>, read_write> = var, vec2<f32>(1.0f)
    %arg_3:ptr<function, f32, read_write> = var, 1.0f
    %7:texture_depth_2d = load %arg_0
    %8:sampler_comparison = load %arg_1
    %9:vec2<f32> = load %arg_2
    %10:f32 = load %arg_3
    %11:f32 = textureSampleCompare %7, %8, %9, %10
    %res:ptr<function, f32, read_write> = var, %11
    %13:f32 = load %res
    store %prevent_dce, %13
    ret
  }
}
%fragment_main = @fragment func():void -> %b3 {
  %b3 = block {
    %15:void = call %textureSampleCompare_3a5923
    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.  *
********************************************************************
