https://bugs.freedesktop.org/show_bug.cgi?id=95130
Bug ID: 95130 Summary: Derivatives of gl_Color wrong when helper pixels used 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: jlegg@feralinteractive.com QA Contact: dri-devel@lists.freedesktop.org
Created attachment 123239 --> https://bugs.freedesktop.org/attachment.cgi?id=123239&action=edit Test program
Along the edges of triangles and around where fragments are rejected due to depth testing, the GLSL functions dFdx, dFdy, and fwidth return incorrect values when the argument is dependant on gl_Color or gl_SecondaryColor.
I've attached a program reproducing the issue. It takes derivatives of a constant, which should be 0. It is expected to produce a black window. However, the edges of the triangle it draws are visible because of this bug.
The error does not occur when environment variable LIBGL_ALWAYS_SOFTWARE is set to 1.
I'm using Mesa git 0831eb9 with an AMD R9 270 on x86_64 Fedora 22.