[Mesa-dev] [PATCH 0/8] nir: Fix and enable global code motion
Jason Ekstrand
jason at jlekstrand.net
Wed Jan 18 02:38:34 UTC 2017
This patch series has a bunch of fixes and refactors for the global code
motion pass in NIR. The patch to dominance is needed for correctness while
most of the rest of them are just cleanups or exist to enable patch 7
without regressions. With the exception of "Deus Ex: Mankind Divided", the
numbers are finally looking really good.
Jason Ekstrand (8):
nir/dominance: Better handle unreachable blocks
nir/gcm: Loop over blocks in pin_instructions
nir/gcm: Use an array for storring the early block
nir/gcm: Move block choosing into a helper function
nir/gcm: Add a real concept of "progress"
nir/gcm: Delete dead instructions
nir/gcm: Prefer the instruction's original block
i965/nir: Use GCM and GVN in the first run of nir_optimize
src/compiler/nir/nir.h | 9 +-
src/compiler/nir/nir_dominance.c | 37 +++++-
src/compiler/nir/nir_opt_gcm.c | 254 +++++++++++++++++++++++-------------
src/mesa/drivers/dri/i965/brw_nir.c | 22 +++-
4 files changed, 215 insertions(+), 107 deletions(-)
--
2.5.0.400.gff86faf
More information about the mesa-dev
mailing list