All of lore.kernel.org
 help / color / mirror / Atom feed
* [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord
@ 2017-12-06 11:30 bugzilla-daemon
  2017-12-06 11:32 ` bugzilla-daemon
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: bugzilla-daemon @ 2017-12-06 11:30 UTC (permalink / raw)
  To: dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 1687 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=104143

            Bug ID: 104143
           Summary: r600/sb: clobbers gl_Position -> gl_FragCoord
           Product: Mesa
           Version: git
          Hardware: x86-64 (AMD64)
                OS: Linux (All)
            Status: NEW
          Severity: normal
          Priority: medium
         Component: Drivers/Gallium/r600
          Assignee: dri-devel@lists.freedesktop.org
          Reporter: gw.fossdev@gmail.com
        QA Contact: dri-devel@lists.freedesktop.org

Created attachment 135998
  --> https://bugs.freedesktop.org/attachment.cgi?id=135998&action=edit
piglit drawing output with sb enabled

With a variation of the piglit 

    spec/glsl-1.10/execution/variable-indexing/vs-output-array-vec2-index-wr

r600/sb clobbers the gl_Position/gl_FragCoord.

The variation consists in replacing two arrays of vec2 by one array of vec4 and
swizzling the elements to achieve the same result (by effectively interleaving
the two arrays). 

A few observations: 

* As can be seen from the colour coding screen shots, the array content is  
correctly passed from the vertex shader to the fragment shader. 

* The error only occurs for the uniform index value 0. 

* When passing an additional parameter that contains a copy of gl_Position,
then   this parameter seems to have the correct value (i.e. the vertex shader
correctly evaluates gl_Position).

* The byte code doesn't doesn't give any obvious indication why things go wrong
with the optimized shader. 

My mesa is at fa8c1b92b7. 

best, 
Gert

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 3229 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord
  2017-12-06 11:30 [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord bugzilla-daemon
@ 2017-12-06 11:32 ` bugzilla-daemon
  2017-12-06 11:32 ` bugzilla-daemon
                   ` (9 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: bugzilla-daemon @ 2017-12-06 11:32 UTC (permalink / raw)
  To: dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 337 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=104143

--- Comment #1 from Gert Wollny <gw.fossdev@gmail.com> ---
Created attachment 135999
  --> https://bugs.freedesktop.org/attachment.cgi?id=135999&action=edit
Version of the original piglit that passes

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 1294 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord
  2017-12-06 11:30 [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord bugzilla-daemon
  2017-12-06 11:32 ` bugzilla-daemon
@ 2017-12-06 11:32 ` bugzilla-daemon
  2017-12-06 11:33 ` bugzilla-daemon
                   ` (8 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: bugzilla-daemon @ 2017-12-06 11:32 UTC (permalink / raw)
  To: dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 336 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=104143

--- Comment #2 from Gert Wollny <gw.fossdev@gmail.com> ---
Created attachment 136000
  --> https://bugs.freedesktop.org/attachment.cgi?id=136000&action=edit
piglit screen output of simplified piglit

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 1291 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord
  2017-12-06 11:30 [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord bugzilla-daemon
  2017-12-06 11:32 ` bugzilla-daemon
  2017-12-06 11:32 ` bugzilla-daemon
@ 2017-12-06 11:33 ` bugzilla-daemon
  2017-12-06 11:34 ` bugzilla-daemon
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: bugzilla-daemon @ 2017-12-06 11:33 UTC (permalink / raw)
  To: dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 362 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=104143

--- Comment #3 from Gert Wollny <gw.fossdev@gmail.com> ---
Created attachment 136001
  --> https://bugs.freedesktop.org/attachment.cgi?id=136001&action=edit
Version of the piglit that uses interleaved array and fails with sb

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 1369 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord
  2017-12-06 11:30 [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord bugzilla-daemon
                   ` (2 preceding siblings ...)
  2017-12-06 11:33 ` bugzilla-daemon
@ 2017-12-06 11:34 ` bugzilla-daemon
  2017-12-06 11:35 ` bugzilla-daemon
                   ` (6 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: bugzilla-daemon @ 2017-12-06 11:34 UTC (permalink / raw)
  To: dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 361 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=104143

--- Comment #4 from Gert Wollny <gw.fossdev@gmail.com> ---
Created attachment 136002
  --> https://bugs.freedesktop.org/attachment.cgi?id=136002&action=edit
Version of the piglit that passes copy of gl_Position and tests it

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 1366 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord
  2017-12-06 11:30 [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord bugzilla-daemon
                   ` (3 preceding siblings ...)
  2017-12-06 11:34 ` bugzilla-daemon
@ 2017-12-06 11:35 ` bugzilla-daemon
  2017-12-06 11:37 ` bugzilla-daemon
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: bugzilla-daemon @ 2017-12-06 11:35 UTC (permalink / raw)
  To: dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 372 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=104143

--- Comment #5 from Gert Wollny <gw.fossdev@gmail.com> ---
Created attachment 136003
  --> https://bugs.freedesktop.org/attachment.cgi?id=136003&action=edit
Piglit screen output with R600_DEBUG=nosb of shaders with extra pos parameter

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 1399 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord
  2017-12-06 11:30 [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord bugzilla-daemon
                   ` (4 preceding siblings ...)
  2017-12-06 11:35 ` bugzilla-daemon
@ 2017-12-06 11:37 ` bugzilla-daemon
  2017-12-06 11:43 ` bugzilla-daemon
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: bugzilla-daemon @ 2017-12-06 11:37 UTC (permalink / raw)
  To: dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 524 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=104143

--- Comment #6 from Gert Wollny <gw.fossdev@gmail.com> ---
Created attachment 136004
  --> https://bugs.freedesktop.org/attachment.cgi?id=136004&action=edit
Piglit output with extra pos parameter and sb enabled

In this image on can see that the (corrected) position passed as extra
parameter differs from the gl_Position for index=0 (colour coded difference),
but only for index 0.

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 1503 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord
  2017-12-06 11:30 [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord bugzilla-daemon
                   ` (5 preceding siblings ...)
  2017-12-06 11:37 ` bugzilla-daemon
@ 2017-12-06 11:43 ` bugzilla-daemon
  2017-12-06 14:32 ` bugzilla-daemon
                   ` (3 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: bugzilla-daemon @ 2017-12-06 11:43 UTC (permalink / raw)
  To: dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 320 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=104143

--- Comment #7 from Gert Wollny <gw.fossdev@gmail.com> ---
Created attachment 136005
  --> https://bugs.freedesktop.org/attachment.cgi?id=136005&action=edit
Shader dump with pos test

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 1243 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord
  2017-12-06 11:30 [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord bugzilla-daemon
                   ` (6 preceding siblings ...)
  2017-12-06 11:43 ` bugzilla-daemon
@ 2017-12-06 14:32 ` bugzilla-daemon
  2017-12-06 16:49 ` bugzilla-daemon
                   ` (2 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: bugzilla-daemon @ 2017-12-06 14:32 UTC (permalink / raw)
  To: dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 1018 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=104143

--- Comment #8 from Gert Wollny <gw.fossdev@gmail.com> ---
I found the problem: 

if KC0[0].x == index (=0):  

1      x: ADD_INT            T0.x,  KC0[0].x, [0xfffffffe -nan].x
2      x: MOVA_INT           __.x,  T0.x

Address register is now -2 and hence,  in the next step R1 is unconditionally
written, and this is actually the gl_Vertex value ...

3      z: MOV                R[3+AR].z,  0
       w: MOV                R[3+AR].w,  [0x3dcccccd 0.1].x

that is here used to evaluate the gl_Posuition. 

5      x: MUL_IEEE           T0.x,  KC0[1].w, R1.x
       y: MUL_IEEE           T0.y,  KC0[1].z, R1.x
6      t: MULADD_IEEE        T0.y,  KC0[2].z, R1.y, T0.y   SCL_212
...

In the un-optimized shader R[3+AR].w is only written to if (KC0[0].x >= 2), and
hence AR >= 0;

I.e. the sb optimizer is to aggressive in optimizing away the conditional
blocks.

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 1805 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord
  2017-12-06 11:30 [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord bugzilla-daemon
                   ` (7 preceding siblings ...)
  2017-12-06 14:32 ` bugzilla-daemon
@ 2017-12-06 16:49 ` bugzilla-daemon
  2017-12-22 14:49 ` bugzilla-daemon
  2017-12-29 18:57 ` bugzilla-daemon
  10 siblings, 0 replies; 12+ messages in thread
From: bugzilla-daemon @ 2017-12-06 16:49 UTC (permalink / raw)
  To: dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 249 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=104143

--- Comment #9 from Gert Wollny <gw.fossdev@gmail.com> ---
Patch: https://patchwork.freedesktop.org/patch/192036/

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 1092 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord
  2017-12-06 11:30 [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord bugzilla-daemon
                   ` (8 preceding siblings ...)
  2017-12-06 16:49 ` bugzilla-daemon
@ 2017-12-22 14:49 ` bugzilla-daemon
  2017-12-29 18:57 ` bugzilla-daemon
  10 siblings, 0 replies; 12+ messages in thread
From: bugzilla-daemon @ 2017-12-22 14:49 UTC (permalink / raw)
  To: dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 268 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=104143

--- Comment #10 from Emil Velikov <emil.l.velikov@gmail.com> ---
Gert, should we close this considering the patch (fix?) has landed?

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 1055 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord
  2017-12-06 11:30 [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord bugzilla-daemon
                   ` (9 preceding siblings ...)
  2017-12-22 14:49 ` bugzilla-daemon
@ 2017-12-29 18:57 ` bugzilla-daemon
  10 siblings, 0 replies; 12+ messages in thread
From: bugzilla-daemon @ 2017-12-29 18:57 UTC (permalink / raw)
  To: dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 552 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=104143

Gert Wollny <gw.fossdev@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
             Status|NEW                         |RESOLVED

--- Comment #11 from Gert Wollny <gw.fossdev@gmail.com> ---
Fixed with commit 6c268ea79af80a65a89a23854bdbe8bc1e99ab23

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 2050 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2017-12-29 18:57 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-12-06 11:30 [Bug 104143] r600/sb: clobbers gl_Position -> gl_FragCoord bugzilla-daemon
2017-12-06 11:32 ` bugzilla-daemon
2017-12-06 11:32 ` bugzilla-daemon
2017-12-06 11:33 ` bugzilla-daemon
2017-12-06 11:34 ` bugzilla-daemon
2017-12-06 11:35 ` bugzilla-daemon
2017-12-06 11:37 ` bugzilla-daemon
2017-12-06 11:43 ` bugzilla-daemon
2017-12-06 14:32 ` bugzilla-daemon
2017-12-06 16:49 ` bugzilla-daemon
2017-12-22 14:49 ` bugzilla-daemon
2017-12-29 18:57 ` bugzilla-daemon

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.