The following shader test exercises the bug:
[require]
GLSL >= 1.10
[vertex shader]
void main()
{
gl_Position = gl_Vertex;
}
[fragment shader]
uniform float f[4];
uniform ivec4 s;
void main()
{
gl_FragColor = vec4(f[s.x], f[s.y], f[s.z], f[s.w]);
}
[test]
uniform float f[0] 0.0
uniform f
The split_virtual_grfs code doesn't properly rewrite reladdr so we need to
make sure that any uniform indirects are lowered away first.
---
src/mesa/drivers/dri/i965/brw_fs.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp
b/src/mesa/