https://bugs.freedesktop.org/show_bug.cgi?id=90439
Bug ID: 90439 Summary: Xonotic render green (bisected) Product: Mesa Version: git Hardware: x86-64 (AMD64) OS: Linux (All) Status: NEW Severity: normal Priority: medium Component: Drivers/Gallium/radeonsi Assignee: dri-devel@lists.freedesktop.org Reporter: smoki00790@gmail.com QA Contact: dri-devel@lists.freedesktop.org
Created attachment 115745 --> https://bugs.freedesktop.org/attachment.cgi?id=115745&action=edit Good
llvm r237140 bisected where Xonotic start to render mostly green artifacts on textures.
Attached R600_DEBUG=ps,vs,gs outputs from good on llvm r237139
https://bugs.freedesktop.org/show_bug.cgi?id=90439
--- Comment #1 from smoki smoki00790@gmail.com --- Created attachment 115747 --> https://bugs.freedesktop.org/attachment.cgi?id=115747&action=edit Bad
And bad with llvm r237140
https://bugs.freedesktop.org/show_bug.cgi?id=90439
--- Comment #2 from smoki smoki00790@gmail.com ---
mesa is 58715b72396133350c1549381553121f936a198e, kernel 4.1-rc3, hardware Athlon 5350 (Kabini), etc...
https://bugs.freedesktop.org/show_bug.cgi?id=90439
Michel Dänzer michel@daenzer.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Xonotic render green |[LLVM] Xonotic render green |(bisected) |(bisected)
https://bugs.freedesktop.org/show_bug.cgi?id=90439
--- Comment #3 from Michel Dänzer michel@daenzer.net --- You said on IRC that the same commit also broke some piglit tests. If so, please attach the good and bad R600_DEBUG=ps,vs,gs output for one of those.
https://bugs.freedesktop.org/show_bug.cgi?id=90439
--- Comment #4 from smoki smoki00790@gmail.com --- Created attachment 115763 --> https://bugs.freedesktop.org/attachment.cgi?id=115763&action=edit piglit-good
Yes, example output is from:
R600_DEBUG=ps,vs,gs ./bin/copy-pixels -samples=8 -auto
on r237139
https://bugs.freedesktop.org/show_bug.cgi?id=90439
--- Comment #5 from smoki smoki00790@gmail.com --- Created attachment 115764 --> https://bugs.freedesktop.org/attachment.cgi?id=115764&action=edit piglit-bad
and bad with r237140
https://bugs.freedesktop.org/show_bug.cgi?id=90439
--- Comment #6 from smoki smoki00790@gmail.com --- Uploaded piglit comparison within these llvm commits
https://dl.dropboxusercontent.com/u/74553632/bug90439.tar.bz2
So basicaly the same ~130 piglits fail, just like in bug 89034 if i enable sub-reg liveness.
https://bugs.freedesktop.org/show_bug.cgi?id=90439
smoki smoki00790@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |critical
https://bugs.freedesktop.org/show_bug.cgi?id=90439
--- Comment #7 from Tom Stellard tstellar@gmail.com --- Could you get good and bad dumps from the glsl-fs-abs-03 test ?
https://bugs.freedesktop.org/show_bug.cgi?id=90439
--- Comment #8 from smoki smoki00790@gmail.com --- Created attachment 115962 --> https://bugs.freedesktop.org/attachment.cgi?id=115962&action=edit pass
Hi Tom, good and bad diff taken from glsl-fs-abs-03 test.
121,125c121,125 < v_interp_p1_f32 v4, v0, 2, 0, [m0] ; C8100200 < v_interp_p2_f32 v4, [v4], v1, 2, 0, [m0] ; C8110201 < v_cvt_pkrtz_f16_f32_e64 v0, |v2|, |v3| ; D25E0300 00020702 < v_cvt_pkrtz_f16_f32_e64 v1, |v4|, 1.0 ; D25E0101 0001E504 < exp 15, 0, 1, 1, 1, v0, v1, v0, v1 ; F8001C0F 01000100 ---
v_interp_p1_f32 v0, v0, 2, 0, [m0] ; C8000200 v_interp_p2_f32 v0, [v0], v1, 2, 0, [m0] ; C8010201 v_cvt_pkrtz_f16_f32_e64 v1, |v2|, |v3| ; D25E0301 00020702 v_cvt_pkrtz_f16_f32_e64 v0, |v0|, 1.0 ; D25E0100 0001E500 exp 15, 0, 1, 1, 1, v1, v0, v1, v0 ; F8001C0F 00010001
130c130 < VGPRS: 8 ---
VGPRS: 4
https://bugs.freedesktop.org/show_bug.cgi?id=90439
--- Comment #9 from smoki smoki00790@gmail.com --- Created attachment 115963 --> https://bugs.freedesktop.org/attachment.cgi?id=115963&action=edit fail
fail on svn237140 attachment
https://bugs.freedesktop.org/show_bug.cgi?id=90439
--- Comment #10 from Michel Dänzer michel@daenzer.net --- Created attachment 115965 --> https://bugs.freedesktop.org/attachment.cgi?id=115965&action=edit Make sure v_interp_p1_f32 doesn't use the source register as destination
Does this proof-of-concept LLVM patch fix the problem?
https://bugs.freedesktop.org/show_bug.cgi?id=90439
--- Comment #11 from smoki smoki00790@gmail.com --- (In reply to Michel Dänzer from comment #10)
Created attachment 115965 [details] [review] Make sure v_interp_p1_f32 doesn't use the source register as destination
Does this proof-of-concept LLVM patch fix the problem?
Bingo! That seems fixed everyting.
On top of that also i can enable SubRegLiveness without a problem.
https://bugs.freedesktop.org/show_bug.cgi?id=90439
--- Comment #12 from Tom Stellard tstellar@gmail.com --- Can you try this branch: http://cgit.freedesktop.org/~tstellar/llvm/log/?h=vinterp-fix
https://bugs.freedesktop.org/show_bug.cgi?id=90439
--- Comment #13 from smoki smoki00790@gmail.com --- (In reply to Tom Stellard from comment #12)
Can you try this branch: http://cgit.freedesktop.org/~tstellar/llvm/log/?h=vinterp-fix
Works fine, apps render fine and no piglit regression.
With that mainlined, this one and bug 89034 can be marked as fixed.
https://bugs.freedesktop.org/show_bug.cgi?id=90439
smoki smoki00790@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |FIXED
--- Comment #14 from smoki smoki00790@gmail.com ---
Patches mainlined. Closing.
dri-devel@lists.freedesktop.org