[Bug 43871] New: shader with uniform array/record and if clauses is not translated correctly into TGSI IR
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Thu Dec 15 14:48:05 PST 2011
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 at lists.freedesktop.org
ReportedBy: vljn at 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.
--
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the dri-devel
mailing list