https://bugs.freedesktop.org/show_bug.cgi?id=98336
Vinson Lee <vlee at freedesktop.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |bisected CC| |edmondo at eriadon.com, | |maraeo at gmail.com, | |nhaehnle at gmail.com --- Comment #1 from Vinson Lee <vlee at freedesktop.org> --- 3ec9975555d1cc5365413ad9062f412904f944a3 is the first bad commit commit 3ec9975555d1cc5365413ad9062f412904f944a3 Author: Marek Olšák <marek.olsak at amd.com> Date: Tue Oct 18 15:20:22 2016 +0200 radeonsi: eliminate trivial constant VS outputs These constant value VS PARAM exports: - 0,0,0,0 - 0,0,0,1 - 1,1,1,0 - 1,1,1,1 can be loaded into PS inputs using the DEFAULT_VAL field, and the VS exports can be removed from the IR to save export & parameter memory. After LLVM optimizations, analyze the IR to see which exports are equal to the ones listed above (or undef) and remove them if they are. Targeted use cases: - All DX9 eON ports always clear 10 VS outputs to 0.0 even if most of them are unused by PS (such as Witcher 2 below). - VS output arrays with unused elements that the GLSL compiler can't eliminate (such as Batman below). The shader-db deltas are quite interesting: (not from upstream si-report.py, it won't be upstreamed) PERCENTAGE DELTAS Shaders PARAM exports (affected only) batman_arkham_origins 589 -67.17 % bioshock-infinite 1769 -0.47 % dirt-showdown 548 -2.68 % dota2 1747 -3.36 % f1-2015 776 -4.94 % left_4_dead_2 1762 -0.07 % metro_2033_redux 2670 -0.43 % portal 474 -0.22 % talos_principle 324 -3.63 % warsow 176 -2.20 % witcher2 1040 -73.78 % ---------------------------------------- All affected 991 -65.37 % ... 9681 -> 3353 ---------------------------------------- Total 26725 -10.82 % ... 58490 -> 52162 v2: treat Undef as both 0 and 1 Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com> (v1) Tested-by: Edmondo Tommasina <edmondo.tommasina at gmail.com> (v1) :040000 040000 88f390ac9053318d6ab558e7e82b9d03f7435711 7bd48a7dfa3843fa64a5c41bbc60d181b44ee15c M src bisect run success -- You are receiving this mail because: You are the assignee for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20161020/e695fa50/attachment.html>