SKIP: FAILED

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

%textureLoad_02c48d = func():void -> %b2 {
  %b2 = block {
    %arg_1:ptr<function, vec3<u32>, read_write> = var, vec3<u32>(1u)
    %5:texture_storage_3d<rgba16uint, read_write> = load %arg_0
    %6:vec3<u32> = load %arg_1
    %7:vec4<u32> = textureLoad %5, %6
    %res:ptr<function, vec4<u32>, read_write> = var, %7
    %9:vec4<u32> = load %res
    store %prevent_dce, %9
    ret
  }
}
%vertex_main = @vertex func():vec4<f32> [@position] -> %b3 {
  %b3 = block {
    %11:void = call %textureLoad_02c48d
    ret vec4<f32>(0.0f)
  }
}
%fragment_main = @fragment func():void -> %b4 {
  %b4 = block {
    %13:void = call %textureLoad_02c48d
    ret
  }
}
%compute_main = @compute @workgroup_size(1, 1, 1) func():void -> %b5 {
  %b5 = block {
    %15:void = call %textureLoad_02c48d
    ret
  }
}

invalid access control for storage texture
********************************************************************
*  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.  *
********************************************************************
