mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-03 11:30:21 +01:00
glsl: Lower vector_extracts to swizzles after lower_vector_derefs.
lower_vector_derefs can produce new vector_extract operations. Neither i965 nor st_glsl_to_tgsi can handle them, so we'd best convert them to swizzles. Together with the previous patch, this fixes assertion failures in GLideN64, as well as a new Piglit test which reproduces the issue: spec/glsl-1.10/compiler/vector-dereference-in-dereference.frag Cc: mesa-stable@lists.freedesktop.org Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=95164 Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
This commit is contained in:
parent
1cd600dbb9
commit
750c38fad1
1 changed files with 1 additions and 0 deletions
|
|
@ -4813,6 +4813,7 @@ link_shaders(struct gl_context *ctx, struct gl_shader_program *prog)
|
|||
&prog->Comp.SharedSize);
|
||||
|
||||
lower_vector_derefs(prog->_LinkedShaders[i]);
|
||||
do_vec_index_to_swizzle(prog->_LinkedShaders[i]->ir);
|
||||
}
|
||||
|
||||
done:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue