X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fgallium%2Fdrivers%2Fswr%2Frasterizer%2Fcore%2Fbackend.h;h=fde5a3f8d9fa326bf2ba126fc4109cd16b40f8ec;hb=b473bec87878fd52eef8ba1ffbc9cf11dc00dc0f;hp=27851a1156c3fee84c47f162d9039d2a2fa1a72a;hpb=63ed11cde9987e438bf28ef74879e2700971eb26;p=mesa.git diff --git a/src/gallium/drivers/swr/rasterizer/core/backend.h b/src/gallium/drivers/swr/rasterizer/core/backend.h index 27851a1156c..fde5a3f8d9f 100644 --- a/src/gallium/drivers/swr/rasterizer/core/backend.h +++ b/src/gallium/drivers/swr/rasterizer/core/backend.h @@ -491,14 +491,15 @@ struct PixelRateZTestLoop RDTSC_START(BEDepthBucket); depthPassMask[sample] = vCoverageMask[sample]; stencilPassMask[sample] = vCoverageMask[sample]; - depthPassMask[sample] = DepthStencilTest(&state, work.triFlags.frontFacing, vZ[sample], pDepthSample, - vCoverageMask[sample], pStencilSample, &stencilPassMask[sample]); + depthPassMask[sample] = DepthStencilTest(&state, work.triFlags.frontFacing, work.triFlags.viewportIndex, + vZ[sample], pDepthSample, vCoverageMask[sample], + pStencilSample, &stencilPassMask[sample]); RDTSC_STOP(BEDepthBucket, 0, 0); // early-exit if no pixels passed depth or earlyZ is forced on if(psState.forceEarlyZ || !_simd_movemask_ps(depthPassMask[sample])) { - DepthStencilWrite(&state.vp[0], &state.depthStencilState, work.triFlags.frontFacing, vZ[sample], + DepthStencilWrite(&state.vp[work.triFlags.viewportIndex], &state.depthStencilState, work.triFlags.frontFacing, vZ[sample], pDepthSample, depthPassMask[sample], vCoverageMask[sample], pStencilSample, stencilPassMask[sample]); if(!_simd_movemask_ps(depthPassMask[sample]))