* [Bug 91461] gl_TessLevel* writes have no effect for all but the last TCS invocation
@ 2015-07-25 14:33 bugzilla-daemon
2015-07-25 14:34 ` bugzilla-daemon
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: bugzilla-daemon @ 2015-07-25 14:33 UTC (permalink / raw)
To: dri-devel
[-- Attachment #1.1: Type: text/plain, Size: 1445 bytes --]
https://bugs.freedesktop.org/show_bug.cgi?id=91461
Bug ID: 91461
Summary: gl_TessLevel* writes have no effect for all but the
last TCS invocation
Product: Mesa
Version: git
Hardware: Other
OS: All
Status: NEW
Severity: normal
Priority: medium
Component: Drivers/Gallium/radeonsi
Assignee: dri-devel@lists.freedesktop.org
Reporter: daniel@constexpr.org
QA Contact: dri-devel@lists.freedesktop.org
The tessellator ignores all writes to gl_TessLevelInner and gl_TessLevelOuter
by the tessellation control shader except except those done by the last TCS
invocation (gl_InvocationID == patch output vertices - 1).
This results in no primitives being generated unless all entries of
gl_TessLevelOuter are written in that invocation (the 'initial' values seem to
be 0 for gl_TessLevelOuter and 1 for gl_TessLevelInner).
Additionally, barrier() does not synchronize changes to the gl_TessLevel*
between TCS invocations.
Neither of these problems can be reproduced with user-defined 'patch out'
variables - writes by any TCS invocation are visible in the evaluation shader
and barrier() makes them visible to the other TCS invocations.
GPU: Radeon HD 7950 (TAHITI)
Mesa: 10.7.0-devel (git-9deb614)
LLVM: r243203
--
You are receiving this mail because:
You are the assignee for the bug.
[-- Attachment #1.2: Type: text/html, Size: 2748 bytes --]
[-- Attachment #2: Type: text/plain, Size: 159 bytes --]
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 4+ messages in thread* [Bug 91461] gl_TessLevel* writes have no effect for all but the last TCS invocation
2015-07-25 14:33 [Bug 91461] gl_TessLevel* writes have no effect for all but the last TCS invocation bugzilla-daemon
@ 2015-07-25 14:34 ` bugzilla-daemon
2015-08-03 14:11 ` bugzilla-daemon
2015-08-06 18:51 ` bugzilla-daemon
2 siblings, 0 replies; 4+ messages in thread
From: bugzilla-daemon @ 2015-07-25 14:34 UTC (permalink / raw)
To: dri-devel
[-- Attachment #1.1: Type: text/plain, Size: 711 bytes --]
https://bugs.freedesktop.org/show_bug.cgi?id=91461
--- Comment #1 from Daniel Scharrer <daniel@constexpr.org> ---
Created attachment 117373
--> https://bugs.freedesktop.org/attachment.cgi?id=117373&action=edit
Tessellation test case
I have attached a test case for this. It can be compiled and run using:
$ sh tessellation.cpp
Use the arrow keys to change which TCS invocation writes to gl_TessLevel* (or
use space/enter to toggle between the first and the last).
It should display a yellow grid no matter what TCS invocation is selected but
instead displays a green grid for invocation 3 and nothing for all other
invocations.
--
You are receiving this mail because:
You are the assignee for the bug.
[-- Attachment #1.2: Type: text/html, Size: 1661 bytes --]
[-- Attachment #2: Type: text/plain, Size: 159 bytes --]
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug 91461] gl_TessLevel* writes have no effect for all but the last TCS invocation
2015-07-25 14:33 [Bug 91461] gl_TessLevel* writes have no effect for all but the last TCS invocation bugzilla-daemon
2015-07-25 14:34 ` bugzilla-daemon
@ 2015-08-03 14:11 ` bugzilla-daemon
2015-08-06 18:51 ` bugzilla-daemon
2 siblings, 0 replies; 4+ messages in thread
From: bugzilla-daemon @ 2015-08-03 14:11 UTC (permalink / raw)
To: dri-devel
[-- Attachment #1.1: Type: text/plain, Size: 337 bytes --]
https://bugs.freedesktop.org/show_bug.cgi?id=91461
--- Comment #2 from Daniel Scharrer <daniel@constexpr.org> ---
I can confirm that the patch "radeonsi: before storing tess levels, load them
from LDS instead of temporary" on the mailing list fixes the issue.
--
You are receiving this mail because:
You are the assignee for the bug.
[-- Attachment #1.2: Type: text/html, Size: 1160 bytes --]
[-- Attachment #2: Type: text/plain, Size: 159 bytes --]
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug 91461] gl_TessLevel* writes have no effect for all but the last TCS invocation
2015-07-25 14:33 [Bug 91461] gl_TessLevel* writes have no effect for all but the last TCS invocation bugzilla-daemon
2015-07-25 14:34 ` bugzilla-daemon
2015-08-03 14:11 ` bugzilla-daemon
@ 2015-08-06 18:51 ` bugzilla-daemon
2 siblings, 0 replies; 4+ messages in thread
From: bugzilla-daemon @ 2015-08-06 18:51 UTC (permalink / raw)
To: dri-devel
[-- Attachment #1.1: Type: text/plain, Size: 546 bytes --]
https://bugs.freedesktop.org/show_bug.cgi?id=91461
Marek Olšák <maraeo@gmail.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
--- Comment #3 from Marek Olšák <maraeo@gmail.com> ---
Fixed by 60159bcfc66a067b50da06f5cabfa20d72e89. Closing.
--
You are receiving this mail because:
You are the assignee for the bug.
[-- Attachment #1.2: Type: text/html, Size: 2112 bytes --]
[-- Attachment #2: Type: text/plain, Size: 159 bytes --]
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2015-08-06 18:51 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-07-25 14:33 [Bug 91461] gl_TessLevel* writes have no effect for all but the last TCS invocation bugzilla-daemon
2015-07-25 14:34 ` bugzilla-daemon
2015-08-03 14:11 ` bugzilla-daemon
2015-08-06 18:51 ` bugzilla-daemon
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox