On Friday, September 22, 2017 8:29:31 PM PDT Timothy Arceri wrote: > > On 23/09/17 02:59, Kenneth Graunke wrote: > > On Tuesday, September 12, 2017 4:37:29 PM PDT Timothy Arceri wrote: > >> This will be used by the nir linking pass so that we don't remove > >> otherwise unused varyings. > >> --- > >> src/compiler/glsl/link_varyings.cpp | 3 +++ > >> 1 file changed, 3 insertions(+) > >> > >> diff --git a/src/compiler/glsl/link_varyings.cpp > >> b/src/compiler/glsl/link_varyings.cpp > >> index 528506fd0eb..656bf79ca9d 100644 > >> --- a/src/compiler/glsl/link_varyings.cpp > >> +++ b/src/compiler/glsl/link_varyings.cpp > >> @@ -2268,6 +2268,9 @@ assign_varying_locations(struct gl_context *ctx, > >> return false; > >> } > >> > >> + /* Mark xfb varyings as always active */ > >> + matched_candidate->toplevel_var->data.always_active_io = 1; > >> + > >> if > >> (matched_candidate->toplevel_var->data.is_unmatched_generic_inout) { > >> matched_candidate->toplevel_var->data.is_xfb_only = 1; > >> matches.record(matched_candidate->toplevel_var, NULL); > >> > > > > Hmm...it looks like this could actually fix a bug today. At least, I'm > > not seeing what code prevents us from deleting variables that are used > > for transform feedback but not otherwise. > > is_xfb_only is used for that, it also has special meaning when packing > since xfb varyings must be packed. For a nir pass is_xfb_only isn't > really required and we can just use always_active_io instead.
Ah right, thanks! It sounds like we could get rid of is_xfb_only sometime in the future, after rewriting packing in NIR...or else rename it to "must_pack" or something. But, later :)
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev