mesa/src/amd
Samuel Pitoiset 68488fd383 aco: optimize v_add(v_bcnt(a, 0), b) to v_bcnt(a, b)
The first operand of v_bcnt should always be a VGPR because if it's
a SGPR, isel selects s_bcnt1 but I added a sanity check to prevent
any problems.

fossils-db (Vega10):
Totals from 23 (0.02% of 139517) affected shaders:
CodeSize: 106828 -> 106664 (-0.15%)
Instrs: 20242 -> 20201 (-0.20%)
Cycles: 213112 -> 211352 (-0.83%)
VMEM: 3200 -> 3184 (-0.50%)
SMEM: 928 -> 927 (-0.11%)

Helps Control, Assassins Creeds Origins and Youngblood.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7568>
2020-11-13 07:28:50 +00:00
..
addrlib amd/addrlib: Use signed char for INT_8. 2020-11-13 02:37:54 +00:00
common radeonsi: Check pitch and offset for validity. 2020-11-13 03:27:28 +00:00
compiler aco: optimize v_add(v_bcnt(a, 0), b) to v_bcnt(a, b) 2020-11-13 07:28:50 +00:00
llvm ac/llvm: fix demote inside conditional branches 2020-11-12 21:02:05 +00:00
registers amd: update gfx10-rsrc.json for gfx10.3 2020-10-23 20:51:20 -04:00
vulkan amd/common: Add support for modifiers. 2020-11-13 03:27:28 +00:00
Android.addrlib.mk android: amd/addrlib: add gfx10 support 2019-07-10 09:03:55 +02:00
Android.common.mk android: amd/registers: switch to new generated register definitions 2020-09-06 20:20:34 +02:00
Android.compiler.mk android: aco/isel: Move context initialization code to a dedicated file 2020-09-14 21:26:53 +02:00
Android.mk android: aco: add support for libmesa_aco 2019-09-28 15:56:34 +02:00
Makefile.sources android: aco: add aco_form_hard_clauses.cpp to Makefile.sources 2020-10-30 13:34:06 +00:00
meson.build aco: add framework for unit testing 2020-07-30 16:13:08 +00:00