There are failing shaders in EVE Online: Part of wine output, full log attached: fixme:d3d_shader:print_glsl_info_log Info log received from GLSL shader #32: fixme:d3d_shader:print_glsl_info_log 0:84(30): error: array index must be < 245 fixme:d3d_shader:print_glsl_info_log 0:84(35): error: type mismatch fixme:d3d_shader:print_glsl_info_log 0:84(35): error: Operands to arithmetic operators must be numeric fixme:d3d_shader:print_glsl_info_log 0:91(30): error: array index must be < 245 fixme:d3d_shader:print_glsl_info_log 0:91(35): error: type mismatch fixme:d3d_shader:print_glsl_info_log 0:91(35): error: Operands to arithmetic operators must be numeric fixme:d3d_shader:print_glsl_info_log 0:93(17): error: array index must be < 245 fixme:d3d_shader:print_glsl_info_log 0:93(22): error: type mismatch Apitrace here: http://pavel.ondracka.cz/EVE.trace Mesa: 6d3d0ca9e9ef0d0a1e3ba0940f7127298e078a7d Kernel: 3.1.0-5.fc16 libdrm: 2.4.26-3.fc16 Wine: 1.3.31
Created attachment 53053 [details] terminal output
Created attachment 53054 [details] RADEON_DEBUG=fp log
Forgot to mention, GPU is RV530.
I'm wondering if this should be reassigned to glsl-compiler since the error messages come from src/glsl/ast_to_hir.cpp not the r300 driver? Tom, Marek, can you comment on this?
Yes, the component should be glsl-compiler.
Reassigning per comment 5.
The shader declares the array VC to have 245 elements: uniform vec4 VC[245]; then it tries to access the 246th element of the array: R0.xyz = (VC[245].xyz); This is explicitly forbidden by GLSL, and it should be rejected by any GLSL compiler. Page 31 of the GLSL 1.30 spec says: "It is illegal to declare an array with a size, and then later (in the same shader) index the same array with an integral constant expression greater than or equal to the declared size." I tried this same shader with AMD's closed-source driver and piglits glslparser test, and it failed to compile there as well: Failed to compile vertex shader wine-from-eve.vert: Vertex shader failed to compile with the following errors: ERROR: 0:84: error(#147) '[' array index out of range '245' ERROR: 0:91: error(#147) '[' array index out of range '245' ERROR: 0:93: error(#147) '[' array index out of range '245' ERROR: error(#273) 3 compilation errors. No code generated
One idea, in this cases, can something like "This is an application bug, do not report it" be printed so an average user like me saves himself some time opening a bug here?
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.