[Mesa-dev] [PATCH 00/19] AMD support for NIR deref instructions.
Bas Nieuwenhuizen
bas at basnieuwenhuizen.nl
Sun May 13 00:19:54 UTC 2018
This implements support in radv and radeonsi for NIR deref
instructions instead of deref chains.
It contains 4 parts:
- patch 1 is a fixup for the initial series by Jason
- Add support everywhere for instruction based derefs
- Stop lowering them to deref chains (may need to be synchronized
with other drivers and core nir code to keep things bisectable)
- Remove support for deref chains.
You can find this series at
https://github.com/bnieuwenhuizen/mesa/commits/derefs-v1
Bas Nieuwenhuizen (19):
fixup! anv,i965,radv,st,ir3: Call nir_lower_deref_instrs
ac/nir: Implement the deref instr for shared memory.
ac/nir: Support deref instructions in get_sampler_desc.
ac/nir: Support deref instructions in tex instructions.
ac/nir: Implement derefs for integer gather4 lowering.
ac/nir: Add deref support to image intrinsics.
radv: Add shader info support for image deref instructions.
ac/nir: Add deref based var loads/stores.
radv: Gather info for deref instr based load/store.
ac/nir: Add shared atomic deref instr support.
ac/nir: Add deref interp support.
radv: Use deref instructions for tex derefs in meta shaders.
radv: Remove image_var stores.
radeonsi: Add deref support to the nir scan pass.
radv: Stop lowering deref instructions.
st/nir: Stop lowering deref instructions.
ac/nir: Remove deref chain support.
radv: Remove deref chain support in radv shader info pass.
radeonsi: Remove deref chain support in nir scan pass.
src/amd/common/ac_nir_to_llvm.c | 547 ++++++++++---------
src/amd/vulkan/radv_meta.c | 20 +-
src/amd/vulkan/radv_meta_blit.c | 30 +-
src/amd/vulkan/radv_meta_blit2d.c | 21 +-
src/amd/vulkan/radv_meta_bufimage.c | 62 ++-
src/amd/vulkan/radv_meta_fast_clear.c | 17 +-
src/amd/vulkan/radv_meta_resolve_cs.c | 10 +-
src/amd/vulkan/radv_shader.c | 2 -
src/amd/vulkan/radv_shader_info.c | 133 ++---
src/gallium/drivers/radeonsi/si_shader_nir.c | 72 ++-
src/mesa/state_tracker/st_glsl_to_nir.cpp | 2 -
11 files changed, 491 insertions(+), 425 deletions(-)
--
2.17.0
More information about the mesa-dev
mailing list