bisect in progress between 6027d354d1d and 45b5f5fa25b
8d8222461f9d7f497d657c2c0eff70820986429b is the first bad commit
Author: Jason Ekstrand <email@example.com>
Date: Mon Jul 23 22:20:41 2018 -0700
intel/nir: Enable nir_opt_find_array_copies
We have to be a bit careful with this one because we want it to run in
the optimization loop but only in the first brw_nir_optimize call.
Later calls assume that we've lowered away copy_deref instructions and
we don't want to introduce any more.
Shader-db results on Kaby Lake:
total instructions in shared programs: 15176942 -> 15176942 (0.00%)
instructions in affected programs: 0 -> 0
In spite of the lack of any shader-db improvement, this patch completely
eliminates spilling in the Batman: Arkham City tessellation shaders.
This is because we are now able to detect that the temporary array
created by DXVK for storing TCS inputs is a copy of the input arrays and
use indirect URB reads instead of making a copy of 4.5 KiB of input data
and then indirecting on it with if-ladders.
Reviewed-by: Caio Marcelo de Oliveira Filho <firstname.lastname@example.org>
Not sure how I missed that this was written up a bit earlier...
*** This bug has been marked as a duplicate of bug 107706 ***
Moving duplicate to a bug that's still open (Timothy closed newer and re-opened the older bug).
*** This bug has been marked as a duplicate of bug 107510 ***