https://bugs.freedesktop.org/show_bug.cgi?id=43871
Bug #: 43871 Summary: shader with uniform array/record and if clauses is not translated correctly into TGSI IR Classification: Unclassified Product: Mesa Version: git Platform: x86-64 (AMD64) OS/Version: Linux (All) Status: NEW Severity: normal Priority: medium Component: Drivers/Gallium/r600 AssignedTo: dri-devel@lists.freedesktop.org ReportedBy: vljn@ovi.com
Hi,
the following fragment shader :
__ #version 130 uniform int mode; uniform vec3 red; uniform struct { vec3 green; vec3 blue; } teststruct; uniform vec3 testarray[3]; out vec3 fragColor;
void main() { if (mode == 0) fragColor = red; if (mode == 1) fragColor = teststruct.green + teststruct.blue; if (mode == 2) { fragColor = vec3(0.); for(int i = 0; i < 3; i++) fragColor += testarray[i]; } } __
is lowered to : __ FRAG PROPERTY FS_COLOR0_WRITES_ALL_CBUFS 1 DCL IN[0], COLOR, LINEAR DCL OUT[0], COLOR 0: MOV OUT[0], IN[0] 1: END __
using mesa from git, swrast, and setting glsl supported version to 130 in st_extensions.c ; glsl_compiler --dump-lir seems correct, so it might be an issue with glsl-to-tgsi.
https://bugs.freedesktop.org/show_bug.cgi?id=43871
Andreas Boll andreas.boll.dev@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|dri-devel@lists.freedesktop |mesa-dev@lists.freedesktop. |.org |org Component|Drivers/Gallium/r600 |Mesa core
--- Comment #1 from Andreas Boll andreas.boll.dev@gmail.com 2012-09-03 10:56:04 UTC ---
(In reply to comment #0)
using mesa from git, swrast, and setting glsl supported version to 130 in st_extensions.c ; glsl_compiler --dump-lir seems correct, so it might be an issue with glsl-to-tgsi.
Reassigning to mesa-core since the issue could be in glsl-to-tgsi. In the meantime GLSL 1.30 has been enabled by default on r600g. Is this still an issue with current mesa from git?
dri-devel@lists.freedesktop.org