https://bugs.freedesktop.org/show_bug.cgi?id=62756
Priority: medium Bug ID: 62756 Assignee: dri-devel@lists.freedesktop.org Summary: Rendering errors on rv790 with llvm and unigine heaven 3.0 Severity: normal Classification: Unclassified OS: Linux (All) Reporter: lists@andyfurniss.entadsl.com Hardware: x86-64 (AMD64) Status: NEW Version: git Component: Drivers/Gallium/r600 Product: Mesa
Created attachment 77043 --> https://bugs.freedesktop.org/attachment.cgi?id=77043&action=edit heaven + llvm on rv790 rendering errors.
rv790 with git mesa and svn llvm, testing unigine heaven 3.0 like -
MESA_EXTENSION_OVERRIDE=-GL_ARB_shader_bit_encoding force_glsl_extensions_warn=true ./heaven
I haven't tested this for a while - it was OK sometime ago with FDO llvm but now I am getting some rendering errors (scree shot attached) with current mesa git and llvm svn.
I tried finding a working commit going back with mesa, but I get to a point where llvm renders nothing at all with anything using current llvm svn.
R600_LLVM=0 has no problems.
https://bugs.freedesktop.org/show_bug.cgi?id=62756
Andy Furniss lists@andyfurniss.entadsl.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #77043|text/plain |image/jpeg mime type| |
https://bugs.freedesktop.org/show_bug.cgi?id=62756
--- Comment #1 from Michel Dänzer michel@daenzer.net --- (In reply to comment #1)
I tried finding a working commit going back with mesa, but I get to a point where llvm renders nothing at all with anything using current llvm svn.
There have been incompatible changes to the interface between r600g and the LLVM R600 backend, so you'd probably need a matching LLVM snapshot. The Git mirror at http://llvm.org/git/llvm.git might be helpful for this.
https://bugs.freedesktop.org/show_bug.cgi?id=62756
--- Comment #2 from Andy Furniss lists@andyfurniss.entadsl.com --- (In reply to comment #1)
(In reply to comment #1)
I tried finding a working commit going back with mesa, but I get to a point where llvm renders nothing at all with anything using current llvm svn.
There have been incompatible changes to the interface between r600g and the LLVM R600 backend, so you'd probably need a matching LLVM snapshot. The Git mirror at http://llvm.org/git/llvm.git might be helpful for this.
OK, it is in llvm. Bisecting with mesa on head comes up with -
fd49dac48fee6da580157515dec55ed2f2d8f2b3 is the first bad commit commit fd49dac48fee6da580157515dec55ed2f2d8f2b3 Author: Vincent Lejeune vljn@ovi.com Date: Mon Mar 11 18:15:06 2013 +0000
R600: Fix JUMP handling so that MachineInstr verification can occur
This allows R600 Target to use the newly created -verify-misched llc flag
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176819 91177308-0d34-0410-b5e6-96231b3b80d8
https://bugs.freedesktop.org/show_bug.cgi?id=62756
--- Comment #3 from Andy Furniss lists@andyfurniss.entadsl.com --- Created attachment 77308 --> https://bugs.freedesktop.org/attachment.cgi?id=77308&action=edit heaven regressed more with current heads
The recent changes to llvm and mesa have regressed heaven more.
Still OK with R600_LLVM=0, and other games are not affected.
https://bugs.freedesktop.org/show_bug.cgi?id=62756
Michel Dänzer michel@daenzer.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |vljn@ovi.com
--- Comment #4 from Michel Dänzer michel@daenzer.net --- Vincent, are you seeing r600g/LLVM bug reports like this one?
https://bugs.freedesktop.org/show_bug.cgi?id=62756
--- Comment #5 from vincent vljn@ovi.com --- No, I don't receive mail from bugzilla until someone add me manually to the cc list (dont know what to do to fix that though)
I'm aware of the regression with latest HEAD, I'm working on a fix. r600g still adds CF_ALU on its own which break CF_CLAUSE address natively encoded by llvm.
https://bugs.freedesktop.org/show_bug.cgi?id=62756
--- Comment #6 from Andy Furniss adf.lists@gmail.com --- (In reply to comment #5)
No, I don't receive mail from bugzilla until someone add me manually to the cc list (dont know what to do to fix that though)
drivers/gallium/r600 bugs get sent to the dri-devel list.
https://bugs.freedesktop.org/show_bug.cgi?id=62756
--- Comment #7 from vincent vljn@ovi.com --- (In reply to comment #6)
(In reply to comment #5)
No, I don't receive mail from bugzilla until someone add me manually to the cc list (dont know what to do to fix that though)
drivers/gallium/r600 bugs get sent to the dri-devel list.
Ok, I always looked on mesa-dev for bugs, thank for pointing me this.
Does the "big" regression still occur with at least revision r178667 for llvm and commit http://cgit.freedesktop.org/mesa/mesa/commit/?id=159d9340662a70df3dcc9da1681... for mesa ?
https://bugs.freedesktop.org/show_bug.cgi?id=62756
--- Comment #8 from Andy Furniss adf.lists@gmail.com --- (In reply to comment #7)
(In reply to comment #6)
(In reply to comment #5)
No, I don't receive mail from bugzilla until someone add me manually to the cc list (dont know what to do to fix that though)
drivers/gallium/r600 bugs get sent to the dri-devel list.
Ok, I always looked on mesa-dev for bugs, thank for pointing me this.
Does the "big" regression still occur with at least revision r178667 for llvm and commit http://cgit.freedesktop.org/mesa/mesa/commit/ ?id=159d9340662a70df3dcc9da1681f5b0a8e7650cf for mesa ?
Yes, it's the same with those.
https://bugs.freedesktop.org/show_bug.cgi?id=62756
--- Comment #9 from vincent vljn@ovi.com --- Created attachment 77490 --> https://bugs.freedesktop.org/attachment.cgi?id=77490&action=edit Proposed patch
Does this patch solve the big regression ?
https://bugs.freedesktop.org/show_bug.cgi?id=62756
--- Comment #10 from Andy Furniss adf.lists@gmail.com --- (In reply to comment #9)
Created attachment 77490 [details] [review] Proposed patch
Does this patch solve the big regression ?
No, it's the same with that.
https://bugs.freedesktop.org/show_bug.cgi?id=62756
--- Comment #11 from vincent vljn@ovi.com --- Created attachment 77534 --> https://bugs.freedesktop.org/attachment.cgi?id=77534&action=edit native inst support for mesa
Sorry, I didn't notice that mesa didn't translate native instruction for r700. You'll need this patch, as well as the previous one ; it should fix the big regression. Can you confirm this ?
https://bugs.freedesktop.org/show_bug.cgi?id=62756
--- Comment #12 from Andy Furniss adf.lists@gmail.com --- (In reply to comment #11)
Created attachment 77534 [details] [review] native inst support for mesa
Sorry, I didn't notice that mesa didn't translate native instruction for r700. You'll need this patch, as well as the previous one ; it should fix the big regression. Can you confirm this ?
Yes, this fixes the big regression and I also no longer see the original regression.
https://bugs.freedesktop.org/show_bug.cgi?id=62756
Andy Furniss adf.lists@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |FIXED
dri-devel@lists.freedesktop.org