diff --git a/src/dawn_native/metal/ShaderModuleMTL.mm b/src/dawn_native/metal/ShaderModuleMTL.mm index 80c7e88f77..82f7096a11 100644 --- a/src/dawn_native/metal/ShaderModuleMTL.mm +++ b/src/dawn_native/metal/ShaderModuleMTL.mm @@ -112,9 +112,14 @@ namespace dawn_native { namespace metal { for (VertexBufferSlot slot : IterateBitSet(renderPipeline->GetVertexBufferSlotsUsed())) { uint32_t metalIndex = renderPipeline->GetMtlVertexBufferIndex(slot); - DAWN_UNUSED(metalIndex); - // TODO(crbug.com/tint/104): Tell Tint to map (kPullingBufferBindingSet, slot) to - // this MSL buffer index. + + // Tell Tint to map (kPullingBufferBindingSet, slot) to this MSL buffer index. + BindingPoint srcBindingPoint{static_cast(kPullingBufferBindingSet), + static_cast(slot)}; + BindingPoint dstBindingPoint{0, metalIndex}; + if (srcBindingPoint != dstBindingPoint) { + bindingPoints.emplace(srcBindingPoint, dstBindingPoint); + } } } if (GetDevice()->IsRobustnessEnabled()) {