nir/linking: fix issue with two compact variables in a row. (v2)
authorDave Airlie <airlied@redhat.com>
Mon, 20 Apr 2020 01:23:45 +0000 (11:23 +1000)
committerMarge Bot <eric+marge@anholt.net>
Mon, 20 Apr 2020 21:08:54 +0000 (21:08 +0000)
commitc2d8a4bf176618bcbf37ef93b6ca06ecac1b1856
treed5904a6d2ee62f9b71a44798c8f02fc13c0e9e9e
parenta24ab26ff72634999ebc262dbdd3404d7b68bfea
nir/linking: fix issue with two compact variables in a row. (v2)

If we have a clip dist float[1] compact followed by a tess factor
float[2] we don't want to overlap them, but the partial check
only happens for non-compact vars.

This fixes some issues seen with my sw vulkan layer with
dEQP-VK.clipping.user_defined.clip_distance*

v2: v1 failed with clip/cull mixtures, since in that
case the cull has a location_frac to follow after the clip
so only reset if we get a location_frac of 0 in a subsequent
clip var

Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4635>
src/compiler/nir/nir_linking_helpers.c