From mboxrd@z Thu Jan 1 00:00:00 1970
From: bugzilla-daemon@freedesktop.org
Subject: [Bug 43871] New: shader with uniform array/record and if clauses is
not translated correctly into TGSI IR
Date: Thu, 15 Dec 2011 22:48:05 +0000
Message-ID:
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Return-path:
Received: from annarchy.freedesktop.org (annarchy.freedesktop.org
[131.252.210.176])
by gabe.freedesktop.org (Postfix) with ESMTP id 3A77AA0C76
for ;
Thu, 15 Dec 2011 14:48:06 -0800 (PST)
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
Sender: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org
Errors-To: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org
To: dri-devel@lists.freedesktop.org
List-Id: dri-devel@lists.freedesktop.org
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.
--
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.