st/nir: Disable varying packing when doing transform feedback.
authorEric Anholt <eric@anholt.net>
Wed, 20 Jun 2018 20:26:52 +0000 (13:26 -0700)
committerEric Anholt <eric@anholt.net>
Thu, 5 Jul 2018 19:38:27 +0000 (12:38 -0700)
commitdbd52585fa9fe79aabea3560cb3aaefffe544af9
tree4218d2872bce28628c39c3edb447a4ea641847ea
parentab7aa0f10cad31c79fc2ae519733564e1557478a
st/nir: Disable varying packing when doing transform feedback.

The varying packing would result in st_nir_assign_var_locations() picking
new driver_locations, despite the pipe_stream_output already being set up
for the old driver location.  This left the gallium driver with no way to
work back to what varying was referenced by pipe_stream_output.

Fixes these tests on V3D:
dEQP-GLES3.functional.transform_feedback.random.separate.points.3
dEQP-GLES3.functional.transform_feedback.random.separate.points.7
dEQP-GLES3.functional.transform_feedback.random.separate.points.9
dEQP-GLES3.functional.transform_feedback.random.separate.triangles.3
dEQP-GLES3.functional.transform_feedback.random.separate.triangles.8

Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
src/mesa/state_tracker/st_glsl_to_nir.cpp