[Bug 91461] gl_TessLevel* writes have no effect for all but the last TCS invocation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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:
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/dri-devel

[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux