From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 98664] Fragment shader while loop causes geometry corruption Date: Wed, 09 Nov 2016 19:17:38 +0000 Message-ID: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0155191204==" Return-path: Received: from culpepper.freedesktop.org (culpepper.freedesktop.org [131.252.210.165]) by gabe.freedesktop.org (Postfix) with ESMTP id 5E0EF6E699 for ; Wed, 9 Nov 2016 19:17:38 +0000 (UTC) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============0155191204== Content-Type: multipart/alternative; boundary="14787190580.bFE6.19365"; charset="UTF-8" --14787190580.bFE6.19365 Date: Wed, 9 Nov 2016 19:17:38 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated https://bugs.freedesktop.org/show_bug.cgi?id=3D98664 Bug ID: 98664 Summary: Fragment shader while loop causes geometry corruption Product: Mesa Version: git Hardware: x86-64 (AMD64) OS: Linux (All) Status: NEW Severity: major Priority: medium Component: Drivers/Gallium/radeonsi Assignee: dri-devel@lists.freedesktop.org Reporter: wallbraker@gmail.com QA Contact: dri-devel@lists.freedesktop.org Created attachment 127870 --> https://bugs.freedesktop.org/attachment.cgi?id=3D127870&action=3Dedit Fragment shader The card is Radeon R9 390. I have a fragment shader that seems to corrupt the geometry of the triangle= . I reduced that fragment shader a lot. The code for this is not easy to compile and require a rather large dataset. You can reach me on IRC, nick Prf_Jakob. $ glxinfo | grep OpenGL OpenGL vendor string: X.Org OpenGL renderer string: Gallium 0.4 on AMD HAWAII (DRM 2.46.0 / 4.8.0-26-generic, LLVM 3.9.0) OpenGL core profile version string: 4.5 (Core Profile) Mesa 13.1.0-devel (git-7bcb94b) OpenGL core profile shading language version string: 4.50 OpenGL core profile context flags: (none) OpenGL core profile profile mask: core profile OpenGL core profile extensions: OpenGL version string: 3.0 Mesa 13.1.0-devel (git-7bcb94b) OpenGL shading language version string: 1.30 OpenGL context flags: (none) OpenGL extensions: OpenGL ES profile version string: OpenGL ES 3.1 Mesa 13.1.0-devel (git-7bcb= 94b) OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.10 OpenGL ES profile extensions: --=20 You are receiving this mail because: You are the assignee for the bug.= --14787190580.bFE6.19365 Date: Wed, 9 Nov 2016 19:17:38 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated
Bug ID 98664
Summary Fragment shader while loop causes geometry corruption
Product Mesa
Version git
Hardware x86-64 (AMD64)
OS Linux (All)
Status NEW
Severity major
Priority medium
Component Drivers/Gallium/radeonsi
Assignee dri-devel@lists.freedesktop.org
Reporter wallbraker@gmail.com
QA Contact dri-devel@lists.freedesktop.org

Created attachment 127870 [details]
Fragment shader

The card is Radeon R9 390.

I have a fragment shader that seems to corrupt the geometry of the triangle=
. I
reduced that fragment shader a lot. The code for this is not easy to compile
and require a rather large dataset. You can reach me on IRC, nick Prf_Jakob.


$ glxinfo | grep OpenGL
OpenGL vendor string: X.Org
OpenGL renderer string: Gallium 0.4 on AMD HAWAII (DRM 2.46.0 /
4.8.0-26-generic, LLVM 3.9.0)
OpenGL core profile version string: 4.5 (Core Profile) Mesa 13.1.0-devel
(git-7bcb94b)
OpenGL core profile shading language version string: 4.50
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 13.1.0-devel (git-7bcb94b)
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.1 Mesa 13.1.0-devel (git-7bcb=
94b)
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.10
OpenGL ES profile extensions:


You are receiving this mail because:
  • You are the assignee for the bug.
= --14787190580.bFE6.19365-- --===============0155191204== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============0155191204==-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 98664] Fragment shader while loop causes geometry corruption Date: Wed, 09 Nov 2016 19:18:10 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1749716715==" Return-path: Received: from culpepper.freedesktop.org (culpepper.freedesktop.org [IPv6:2610:10:20:722:a800:ff:fe98:4b55]) by gabe.freedesktop.org (Postfix) with ESMTP id 55F946E6D5 for ; Wed, 9 Nov 2016 19:18:10 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============1749716715== Content-Type: multipart/alternative; boundary="14787190900.6E8D0.19635"; charset="UTF-8" --14787190900.6E8D0.19635 Date: Wed, 9 Nov 2016 19:18:10 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated https://bugs.freedesktop.org/show_bug.cgi?id=3D98664 --- Comment #1 from Jakob Bornecrantz --- Created attachment 127871 --> https://bugs.freedesktop.org/attachment.cgi?id=3D127871&action=3Dedit Vertex shader --=20 You are receiving this mail because: You are the assignee for the bug.= --14787190900.6E8D0.19635 Date: Wed, 9 Nov 2016 19:18:10 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated

Comment= # 1 on bug 98664<= /a> from Jakob Bornecrantz
Created attachment 127871 
References: 
Mime-Version: 1.0
Content-Type: multipart/mixed; boundary="===============0118697583=="
Return-path: 
Received: from culpepper.freedesktop.org (culpepper.freedesktop.org
 [131.252.210.165])
 by gabe.freedesktop.org (Postfix) with ESMTP id 22D756E6F8
 for ; Wed,  9 Nov 2016 19:18:25 +0000 (UTC)
In-Reply-To: 
List-Unsubscribe: ,
 
List-Archive: 
List-Post: 
List-Help: 
List-Subscribe: ,
 
Errors-To: dri-devel-bounces@lists.freedesktop.org
Sender: "dri-devel" 
To: dri-devel@lists.freedesktop.org
List-Id: dri-devel@lists.freedesktop.org


--===============0118697583==
Content-Type: multipart/alternative; boundary="14787191050.aaF987A25.19577";
 charset="UTF-8"


--14787191050.aaF987A25.19577
Date: Wed, 9 Nov 2016 19:18:25 +0000
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Bugzilla-URL: http://bugs.freedesktop.org/
Auto-Submitted: auto-generated

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

--- Comment #2 from Jakob Bornecrantz  ---
Created attachment 127872
  --> https://bugs.freedesktop.org/attachment.cgi?id=3D127872&action=3Dedit
Geometry shader

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

--14787191050.aaF987A25.19577
Date: Wed, 9 Nov 2016 19:18:25 +0000
MIME-Version: 1.0
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Bugzilla-URL: http://bugs.freedesktop.org/
Auto-Submitted: auto-generated


    
      
    
    
      


You are receiving this mail because:
  • You are the assignee for the bug.
= --14787191050.aaF987A25.19577-- --===============0118697583== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============0118697583==-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 98664] Fragment shader while loop causes geometry corruption Date: Wed, 09 Nov 2016 19:21:56 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0318843742==" Return-path: Received: from culpepper.freedesktop.org (culpepper.freedesktop.org [IPv6:2610:10:20:722:a800:ff:fe98:4b55]) by gabe.freedesktop.org (Postfix) with ESMTP id 3AC3E6E0E2 for ; Wed, 9 Nov 2016 19:21:56 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============0318843742== Content-Type: multipart/alternative; boundary="14787193160.DFfbe.20113"; charset="UTF-8" --14787193160.DFfbe.20113 Date: Wed, 9 Nov 2016 19:21:56 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated https://bugs.freedesktop.org/show_bug.cgi?id=3D98664 Jakob Bornecrantz changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #127870|0 |1 is obsolete| | --- Comment #3 from Jakob Bornecrantz --- Created attachment 127873 --> https://bugs.freedesktop.org/attachment.cgi?id=3D127873&action=3Dedit Fragment shader The shader works on the same card on Windows. Managed to reduce the shader even more. --=20 You are receiving this mail because: You are the assignee for the bug.= --14787193160.DFfbe.20113 Date: Wed, 9 Nov 2016 19:21:56 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated Jakob Bornecrantz changed bug 98664<= /a>
What Removed Added
Attachment #127870 is obsolete   1

Comment= # 3 on bug 98664<= /a> from Jakob Bornecrantz
Created attachment 127873 [details]
Fragment shader

The shader works on the same card on Windows.

Managed to reduce the shader even more.


You are receiving this mail because:
  • You are the assignee for the bug.
= --14787193160.DFfbe.20113-- --===============0318843742== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============0318843742==-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 98664] Fragment shader while loop causes geometry corruption Date: Wed, 16 Nov 2016 11:04:52 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1492444624==" Return-path: Received: from culpepper.freedesktop.org (culpepper.freedesktop.org [131.252.210.165]) by gabe.freedesktop.org (Postfix) with ESMTP id 586026E678 for ; Wed, 16 Nov 2016 11:04:52 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============1492444624== Content-Type: multipart/alternative; boundary="14792942921.0129.26787"; charset="UTF-8" --14792942921.0129.26787 Date: Wed, 16 Nov 2016 11:04:52 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated https://bugs.freedesktop.org/show_bug.cgi?id=3D98664 --- Comment #4 from Nicolai H=C3=A4hnle --- Thanks for trying to reduce the test case as much as possible. Do you have a simple test program that shows the problem? --=20 You are receiving this mail because: You are the assignee for the bug.= --14792942921.0129.26787 Date: Wed, 16 Nov 2016 11:04:52 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated

Comment= # 4 on bug 98664<= /a> from Nicolai H=C3=A4hnle
Thanks for trying to reduce the test case as much as possible.=
 Do you have a
simple test program that shows the problem?


You are receiving this mail because:
  • You are the assignee for the bug.
= --14792942921.0129.26787-- --===============1492444624== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============1492444624==-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 98664] Fragment shader while loop causes geometry corruption Date: Wed, 16 Nov 2016 11:44:23 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0690573673==" Return-path: Received: from culpepper.freedesktop.org (culpepper.freedesktop.org [IPv6:2610:10:20:722:a800:ff:fe98:4b55]) by gabe.freedesktop.org (Postfix) with ESMTP id 2949A6E678 for ; Wed, 16 Nov 2016 11:44:24 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============0690573673== Content-Type: multipart/alternative; boundary="14792966640.966c1F02.30106"; charset="UTF-8" --14792966640.966c1F02.30106 Date: Wed, 16 Nov 2016 11:44:24 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated https://bugs.freedesktop.org/show_bug.cgi?id=3D98664 Jakob Bornecrantz changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #127871|0 |1 is obsolete| | Attachment #127872|0 |1 is obsolete| | Attachment #127873|0 |1 is obsolete| | --- Comment #5 from Jakob Bornecrantz --- Created attachment 128003 --> https://bugs.freedesktop.org/attachment.cgi?id=3D128003&action=3Dedit Trace of the program Adding a trace of the program, slightly different shaders in it, but still broken. --=20 You are receiving this mail because: You are the assignee for the bug.= --14792966640.966c1F02.30106 Date: Wed, 16 Nov 2016 11:44:24 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated Jakob Bornecrantz changed bug 98664<= /a>
What Removed Added
Attachment #127871 is obsolete   1
Attachment #127872 is obsolete   1
Attachment #127873 is obsolete   1

Comment= # 5 on bug 98664<= /a> from Jakob Bornecrantz
Created attachment 128003 [details]
Trace of the program

Adding a trace of the program, slightly different shaders in it, but still
broken.


You are receiving this mail because:
  • You are the assignee for the bug.
= --14792966640.966c1F02.30106-- --===============0690573673== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============0690573673==-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 98664] Fragment shader while loop causes geometry corruption Date: Wed, 16 Nov 2016 15:07:09 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1074857662==" Return-path: Received: from culpepper.freedesktop.org (culpepper.freedesktop.org [131.252.210.165]) by gabe.freedesktop.org (Postfix) with ESMTP id 6AB866E22C for ; Wed, 16 Nov 2016 15:07:09 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============1074857662== Content-Type: multipart/alternative; boundary="14793088291.6D334.14599"; charset="UTF-8" --14793088291.6D334.14599 Date: Wed, 16 Nov 2016 15:07:09 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated https://bugs.freedesktop.org/show_bug.cgi?id=3D98664 --- Comment #6 from Nicolai H=C3=A4hnle --- Created attachment 128011 --> https://bugs.freedesktop.org/attachment.cgi?id=3D128011&action=3Dedit Last frame of trace with LLVM patch The patch at https://reviews.llvm.org/D26747 fixes the assertion that I get when running the trace. I've attached the last frame that I get with the fix applied. If that still looks wrong, please give some indication of how it's supposed to look :) --=20 You are receiving this mail because: You are the assignee for the bug.= --14793088291.6D334.14599 Date: Wed, 16 Nov 2016 15:07:09 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated

Comment= # 6 on bug 98664<= /a> from Nicolai H=C3=A4hnle
Created atta=
chment 128011 [details]
Last frame of trace with LLVM patch

The patch at https://reviews.ll=
vm.org/D26747 fixes the assertion that I get
when running the trace. I've attached the last frame that I get with the fix
applied. If that still looks wrong, please give some indication of how it's
supposed to look :)


You are receiving this mail because:
  • You are the assignee for the bug.
= --14793088291.6D334.14599-- --===============1074857662== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============1074857662==-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 98664] Fragment shader while loop causes geometry corruption Date: Wed, 16 Nov 2016 15:59:02 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0659207660==" Return-path: Received: from culpepper.freedesktop.org (culpepper.freedesktop.org [IPv6:2610:10:20:722:a800:ff:fe98:4b55]) by gabe.freedesktop.org (Postfix) with ESMTP id AE6E86E73A for ; Wed, 16 Nov 2016 15:59:02 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============0659207660== Content-Type: multipart/alternative; boundary="14793119421.8cA5b2.18691"; charset="UTF-8" --14793119421.8cA5b2.18691 Date: Wed, 16 Nov 2016 15:59:02 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated https://bugs.freedesktop.org/show_bug.cgi?id=3D98664 --- Comment #7 from Ilia Mirkin --- Created attachment 128012 --> https://bugs.freedesktop.org/attachment.cgi?id=3D128012&action=3Dedit last frame with i965/SKL mesa 13.0.1 --=20 You are receiving this mail because: You are the assignee for the bug.= --14793119421.8cA5b2.18691 Date: Wed, 16 Nov 2016 15:59:02 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated

Comment= # 7 on bug 98664<= /a> from Ilia Mirkin
Created att=
achment 128012 [details]
last frame with i965/SKL mesa 13.0.1


You are receiving this mail because:
  • You are the assignee for the bug.
= --14793119421.8cA5b2.18691-- --===============0659207660== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============0659207660==-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 98664] Fragment shader while loop causes geometry corruption Date: Wed, 16 Nov 2016 17:03:44 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0643640461==" Return-path: Received: from culpepper.freedesktop.org (culpepper.freedesktop.org [131.252.210.165]) by gabe.freedesktop.org (Postfix) with ESMTP id 042456E080 for ; Wed, 16 Nov 2016 17:03:44 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============0643640461== Content-Type: multipart/alternative; boundary="14793158230.64c43A94.23373"; charset="UTF-8" --14793158230.64c43A94.23373 Date: Wed, 16 Nov 2016 17:03:43 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated https://bugs.freedesktop.org/show_bug.cgi?id=3D98664 --- Comment #8 from Jakob Bornecrantz --- (In reply to Ilia Mirkin from comment #7) > Created attachment 128012 [details] > last frame with i965/SKL mesa 13.0.1 That is how it should look. 17:02 < nha> funny because Prf_Jakob seems to think it's related to loops in the pixel shader... Looks my analysis was wrong. Since the fragment shader in use is trivial, t= ho making it even more trivial makes it work (not using inMinEdge). #version 450 core layout (location =3D 0) in vec3 inPosition; layout (location =3D 0) out vec4 outColor; void main(void) { outColor =3D vec4(inPosition, 1.0); } --=20 You are receiving this mail because: You are the assignee for the bug.= --14793158230.64c43A94.23373 Date: Wed, 16 Nov 2016 17:03:43 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated

Comment= # 8 on bug 98664<= /a> from Jakob Bornecrantz
(In reply to Ilia Mirkin from comment #7)
> Created attachment 128012 [details]=

> last frame with i965/SKL mesa 13.0.1

That is how it should look.



17:02 < nha> funny because Prf_Jakob seems to think it's related to l=
oops in
the pixel shader...

Looks my analysis was wrong. Since the fragment shader in use is trivial, t=
ho
making it even more trivial makes it work (not using inMinEdge).


#version 450 core

layout (location =3D 0) in vec3 inPosition;
layout (location =3D 0) out vec4 outColor;


void main(void)
{
        outColor =3D vec4(inPosition, 1.0);
}


You are receiving this mail because:
  • You are the assignee for the bug.
= --14793158230.64c43A94.23373-- --===============0643640461== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============0643640461==-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 98664] Fragment shader while loop causes geometry corruption Date: Wed, 16 Nov 2016 21:09:24 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0650995557==" Return-path: Received: from culpepper.freedesktop.org (culpepper.freedesktop.org [IPv6:2610:10:20:722:a800:ff:fe98:4b55]) by gabe.freedesktop.org (Postfix) with ESMTP id 463236E7C0 for ; Wed, 16 Nov 2016 21:09:24 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============0650995557== Content-Type: multipart/alternative; boundary="14793305640.5c18F58.12543"; charset="UTF-8" --14793305640.5c18F58.12543 Date: Wed, 16 Nov 2016 21:09:24 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated https://bugs.freedesktop.org/show_bug.cgi?id=3D98664 --- Comment #9 from Jakob Bornecrantz --- With the LLVM patch it looks the same as you, but its still wrong (should l= ook like Ilias screenshot). --=20 You are receiving this mail because: You are the assignee for the bug.= --14793305640.5c18F58.12543 Date: Wed, 16 Nov 2016 21:09:24 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated

Comment= # 9 on bug 98664<= /a> from Jakob Bornecrantz
With the LLVM patch it looks the same as you, but its still wr=
ong (should look
like Ilias screenshot).


You are receiving this mail because:
  • You are the assignee for the bug.
= --14793305640.5c18F58.12543-- --===============0650995557== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============0650995557==-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 98664] Fragment shader while loop causes geometry corruption Date: Thu, 17 Nov 2016 15:40:00 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1938978862==" Return-path: Received: from culpepper.freedesktop.org (culpepper.freedesktop.org [IPv6:2610:10:20:722:a800:ff:fe98:4b55]) by gabe.freedesktop.org (Postfix) with ESMTP id 098516E7F6 for ; Thu, 17 Nov 2016 15:40:00 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============1938978862== Content-Type: multipart/alternative; boundary="14793971991.Bc2FeC.27874"; charset="UTF-8" --14793971991.Bc2FeC.27874 Date: Thu, 17 Nov 2016 15:39:59 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated https://bugs.freedesktop.org/show_bug.cgi?id=3D98664 Nicolai H=C3=A4hnle changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |NOTOURBUG Status|NEW |RESOLVED --- Comment #10 from Nicolai H=C3=A4hnle --- The geometry shader is incorrect. I guess it works on i965 because the NIR = path skips some optimizations that are allowed by the GLSL spec, which has this = to say about EmitVertex(): "Emits the current values of output variables to the current output primitive. On return from this call, the values of output variables are undefined." In other words, you need to store outMinEdge / outMaxEdge in temporary variables. --=20 You are receiving this mail because: You are the assignee for the bug.= --14793971991.Bc2FeC.27874 Date: Thu, 17 Nov 2016 15:39:59 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated Nicolai H=C3=A4hnle changed bug 98664<= /a>
What Removed Added
Resolution --- NOTOURBUG
Status NEW RESOLVED

Commen= t # 10 on bug 98664<= /a> from Nicolai H=C3=A4hnle
The geometry shader is incorrect. I guess it works on i965 bec=
ause the NIR path
skips some optimizations that are allowed by the GLSL spec, which has this =
to
say about EmitVertex():

   "Emits the current values of output variables to the current
   output primitive. On return from this call, the values of
   output variables are undefined."

In other words, you need to store outMinEdge / outMaxEdge in temporary
variables.


You are receiving this mail because:
  • You are the assignee for the bug.
= --14793971991.Bc2FeC.27874-- --===============1938978862== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============1938978862==-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 98664] Fragment shader while loop causes geometry corruption Date: Thu, 17 Nov 2016 15:56:47 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1757064092==" Return-path: Received: from culpepper.freedesktop.org (culpepper.freedesktop.org [IPv6:2610:10:20:722:a800:ff:fe98:4b55]) by gabe.freedesktop.org (Postfix) with ESMTP id DD5156E7FD for ; Thu, 17 Nov 2016 15:56:46 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============1757064092== Content-Type: multipart/alternative; boundary="14793982061.dc6A93.30077"; charset="UTF-8" --14793982061.dc6A93.30077 Date: Thu, 17 Nov 2016 15:56:46 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated https://bugs.freedesktop.org/show_bug.cgi?id=3D98664 --- Comment #11 from Nicolai H=C3=A4hnle --- Actually, I suspect we do have a related bug here in the Mesa state tracker, but you definitely need to fix that geometry shader. --=20 You are receiving this mail because: You are the assignee for the bug.= --14793982061.dc6A93.30077 Date: Thu, 17 Nov 2016 15:56:46 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated

Commen= t # 11 on bug 98664<= /a> from Nicolai H=C3=A4hnle
Actually, I suspect we do have a related bug here in the Mesa =
state tracker,
but you definitely need to fix that geometry shader.


You are receiving this mail because:
  • You are the assignee for the bug.
= --14793982061.dc6A93.30077-- --===============1757064092== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============1757064092==-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 98664] Fragment shader while loop causes geometry corruption Date: Thu, 17 Nov 2016 17:01:20 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0129196859==" Return-path: Received: from culpepper.freedesktop.org (culpepper.freedesktop.org [IPv6:2610:10:20:722:a800:ff:fe98:4b55]) by gabe.freedesktop.org (Postfix) with ESMTP id 3FA156E833 for ; Thu, 17 Nov 2016 17:01:20 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============0129196859== Content-Type: multipart/alternative; boundary="14794020801.dAAe.3724"; charset="UTF-8" --14794020801.dAAe.3724 Date: Thu, 17 Nov 2016 17:01:20 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated https://bugs.freedesktop.org/show_bug.cgi?id=3D98664 --- Comment #12 from Ilia Mirkin --- (In reply to Nicolai H=C3=A4hnle from comment #10) > The geometry shader is incorrect. I guess it works on i965 because the NIR > path skips some optimizations that are allowed by the GLSL spec, which has > this to say about EmitVertex(): >=20 > "Emits the current values of output variables to the current > output primitive. On return from this call, the values of > output variables are undefined." >=20 > In other words, you need to store outMinEdge / outMaxEdge in temporary > variables. FWIW I've noticed that NVIDIA blob tends to go exactly counter to this, and explicitly "latches" the values. (While i965 hardware behaves this way by default, NVIDIA hw does not - it takes extra effort to make it do that, and= the NVIDIA blob does it. We've resorted to doing it for gl_Layer/gl_ViewportInd= ex in nouveau, but not other varyings.) Note that it's not necessary to re-emit flat varyings for every vertex, just the provoking vertex. This tends to be the last vertex by default, I believ= e. (And I don't know if that's prior to strip decomposition or not.) --=20 You are receiving this mail because: You are the assignee for the bug.= --14794020801.dAAe.3724 Date: Thu, 17 Nov 2016 17:01:20 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated

Commen= t # 12 on bug 98664<= /a> from Ilia Mirkin
(In reply to Nicolai H=C3=A4hnle from comment #10)
> The geometry shader is incorrect. I guess it wor=
ks on i965 because the NIR
> path skips some optimizations that are allowed by the GLSL spec, which=
 has
> this to say about EmitVertex():
>=20
>    "Emits the current values of output variables to the current
>    output primitive. On return from this call, the values of
>    output variables are undefined."
>=20
> In other words, you need to store outMinEdge / outMaxEdge in temporary
> variables.

FWIW I've noticed that NVIDIA blob tends to go exactly counter to this, and
explicitly "latches" the values. (While i965 hardware behaves thi=
s way by
default, NVIDIA hw does not - it takes extra effort to make it do that, and=
 the
NVIDIA blob does it. We've resorted to doing it for gl_Layer/gl_ViewportInd=
ex
in nouveau, but not other varyings.)

Note that it's not necessary to re-emit flat varyings for every vertex, just
the provoking vertex. This tends to be the last vertex by default, I believ=
e.
(And I don't know if that's prior to strip decomposition or not.)


You are receiving this mail because:
  • You are the assignee for the bug.
= --14794020801.dAAe.3724-- --===============0129196859== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============0129196859==-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 98664] Fragment shader while loop causes geometry corruption Date: Thu, 17 Nov 2016 17:15:20 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1839203867==" Return-path: Received: from culpepper.freedesktop.org (culpepper.freedesktop.org [131.252.210.165]) by gabe.freedesktop.org (Postfix) with ESMTP id 9BA446E830 for ; Thu, 17 Nov 2016 17:15:20 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============1839203867== Content-Type: multipart/alternative; boundary="14794029200.062e1e57.5809"; charset="UTF-8" --14794029200.062e1e57.5809 Date: Thu, 17 Nov 2016 17:15:20 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated https://bugs.freedesktop.org/show_bug.cgi?id=3D98664 --- Comment #13 from Jakob Bornecrantz --- (In reply to Nicolai H=C3=A4hnle from comment #11) > Actually, I suspect we do have a related bug here in the Mesa state track= er, > but you definitely need to fix that geometry shader. Oh I did not know that, I will fix the shaders and report back. I can mirror Ilias observation, all blob drivers that I have run this on features the latch behaviour (nVidia windows, AMD windows, nVidia Linux). Cheers, Jakob. --=20 You are receiving this mail because: You are the assignee for the bug.= --14794029200.062e1e57.5809 Date: Thu, 17 Nov 2016 17:15:20 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated

Commen= t # 13 on bug 98664<= /a> from Jakob Bornecrantz
(In reply to Nicolai H=C3=A4hnle from comment #11)
> Actually, I suspect we do have a related bug her=
e in the Mesa state tracker,
> but you definitely need to fix that geometry shader.

Oh I did not know that, I will fix the shaders and report back.

I can mirror Ilias observation, all blob drivers that I have run this on
features the latch behaviour (nVidia windows, AMD windows, nVidia Linux).

Cheers, Jakob.


You are receiving this mail because:
  • You are the assignee for the bug.
= --14794029200.062e1e57.5809-- --===============1839203867== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============1839203867==-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 98664] Fragment shader while loop causes geometry corruption Date: Thu, 17 Nov 2016 21:57:09 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1846087868==" Return-path: Received: from culpepper.freedesktop.org (culpepper.freedesktop.org [IPv6:2610:10:20:722:a800:ff:fe98:4b55]) by gabe.freedesktop.org (Postfix) with ESMTP id 038C36E8A2 for ; Thu, 17 Nov 2016 21:57:09 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============1846087868== Content-Type: multipart/alternative; boundary="14794198281.B783d8.573"; charset="UTF-8" --14794198281.B783d8.573 Date: Thu, 17 Nov 2016 21:57:08 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated https://bugs.freedesktop.org/show_bug.cgi?id=3D98664 --- Comment #14 from Nicolai H=C3=A4hnle --- I suspect the reason that the blob drivers do it this way is that if you do= n't, you're likely to hit a subtle bug with emit inside control flow. And making= the effort to exploit the undefined-ness probably pays off very rarely, so... I= 'm about to send out a patch to mesa-dev that might explain this better. In any case, the shader still did the wrong thing according to the spec :) --=20 You are receiving this mail because: You are the assignee for the bug.= --14794198281.B783d8.573 Date: Thu, 17 Nov 2016 21:57:08 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated

Commen= t # 14 on bug 98664<= /a> from Nicolai H=C3=A4hnle
I suspect the reason that the blob drivers do it this way is t=
hat if you don't,
you're likely to hit a subtle bug with emit inside control flow. And making=
 the
effort to exploit the undefined-ness probably pays off very rarely, so... I=
'm
about to send out a patch to mesa-dev that might explain this better. In any
case, the shader still did the wrong thing according to the spec :)


You are receiving this mail because:
  • You are the assignee for the bug.
= --14794198281.B783d8.573-- --===============1846087868== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============1846087868==-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 98664] Fragment shader while loop causes geometry corruption Date: Thu, 17 Nov 2016 22:34:55 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1398395913==" Return-path: Received: from culpepper.freedesktop.org (culpepper.freedesktop.org [131.252.210.165]) by gabe.freedesktop.org (Postfix) with ESMTP id BAAA089954 for ; Thu, 17 Nov 2016 22:34:54 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============1398395913== Content-Type: multipart/alternative; boundary="14794220940.ceB1BB3Fd.5201"; charset="UTF-8" --14794220940.ceB1BB3Fd.5201 Date: Thu, 17 Nov 2016 22:34:54 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated https://bugs.freedesktop.org/show_bug.cgi?id=3D98664 --- Comment #15 from Jakob Bornecrantz --- (In reply to Nicolai H=C3=A4hnle from comment #14) > I suspect the reason that the blob drivers do it this way is that if you > don't, you're likely to hit a subtle bug with emit inside control flow. A= nd > making the effort to exploit the undefined-ness probably pays off very > rarely, so... I'm about to send out a patch to mesa-dev that might explain > this better. In any case, the shader still did the wrong thing according = to > the spec :) Following the spec fixed the problems I was seeing, thanks! It slightly slo= wer then on Windows, but within the same magnitude. Cheers, Jakob. --=20 You are receiving this mail because: You are the assignee for the bug.= --14794220940.ceB1BB3Fd.5201 Date: Thu, 17 Nov 2016 22:34:54 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated

Commen= t # 15 on bug 98664<= /a> from Jakob Bornecrantz
(In reply to Nicolai H=C3=A4hnle from comment #14)
> I suspect the reason that the blob drivers do it=
 this way is that if you
> don't, you're likely to hit a subtle bug with emit inside control flow=
. And
> making the effort to exploit the undefined-ness probably pays off very
> rarely, so... I'm about to send out a patch to mesa-dev that might exp=
lain
> this better. In any case, the shader still did the wrong thing accordi=
ng to
> the spec :)

Following the spec fixed the problems I was seeing, thanks! It slightly slo=
wer
then on Windows, but within the same magnitude.

Cheers, Jakob.


You are receiving this mail because:
  • You are the assignee for the bug.
= --14794220940.ceB1BB3Fd.5201-- --===============1398395913== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============1398395913==-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 98664] Fragment shader while loop causes geometry corruption Date: Fri, 18 Nov 2016 21:51:01 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0445830594==" Return-path: Received: from culpepper.freedesktop.org (culpepper.freedesktop.org [IPv6:2610:10:20:722:a800:ff:fe98:4b55]) by gabe.freedesktop.org (Postfix) with ESMTP id 2F45D6EA8F for ; Fri, 18 Nov 2016 21:51:01 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============0445830594== Content-Type: multipart/alternative; boundary="14795058611.eFc3d8.16021"; charset="UTF-8" --14795058611.eFc3d8.16021 Date: Fri, 18 Nov 2016 21:51:01 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated https://bugs.freedesktop.org/show_bug.cgi?id=3D98664 --- Comment #16 from Roland Scheidegger --- (In reply to Nicolai H=C3=A4hnle from comment #14) > I suspect the reason that the blob drivers do it this way is that if you > don't, you're likely to hit a subtle bug with emit inside control flow. A= nd > making the effort to exploit the undefined-ness probably pays off very > rarely, so... Also, you can do this with dx10, so app developers porting things are somew= hat likely to get it wrong (I suppose that's similar to other such subtle issues like discard killing your derivatives if you have per-pixel control flow wi= th gl, but not with dx10). At least I think so from the description of emit: https://msdn.microsoft.com/en-us/library/windows/desktop/hh447053(v=3Dvs.85= ).aspx "emit causes all declared o# registers to be read out of the Geometry Shade= r to generate a vertex." Doesn't say explicitly the registers are still valid afterwards, but since reading a register usually doesn't nuke the value, the reg getting undefined would be a side-effect which should have been mentioned... --=20 You are receiving this mail because: You are the assignee for the bug.= --14795058611.eFc3d8.16021 Date: Fri, 18 Nov 2016 21:51:01 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated

Commen= t # 16 on bug 98664<= /a> from Roland Scheidegger
(In reply to Nicolai H=C3=A4hnle from comment #14)
> I suspect the reason that the blob drivers do it=
 this way is that if you
> don't, you're likely to hit a subtle bug with emit inside control flow=
. And
> making the effort to exploit the undefined-ness probably pays off very
> rarely, so...

Also, you can do this with dx10, so app developers porting things are somew=
hat
likely to get it wrong (I suppose that's similar to other such subtle issues
like discard killing your derivatives if you have per-pixel control flow wi=
th
gl, but not with dx10).
At least I think so from the description of emit:
https://msdn.microsoft.com/en-us/library/windows/desktop=
/hh447053(v=3Dvs.85).aspx
"emit causes all declared o# registers to be read out of the Geometry =
Shader to
generate a vertex." Doesn't say explicitly the registers are still val=
id
afterwards, but since reading a register usually doesn't nuke the value, the
reg getting undefined would be a side-effect which should have been
mentioned...


You are receiving this mail because:
  • You are the assignee for the bug.
= --14795058611.eFc3d8.16021-- --===============0445830594== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============0445830594==--