[all-commits] [llvm/llvm-project] d85d14: [AMDGPU] New image intrinsic optimizer pass (#67151)
Jay Foad via All-commits
all-commits at lists.llvm.org
Tue Sep 26 01:34:03 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: d85d143ad99006a5500b375bd199c087adf7778f
https://github.com/llvm/llvm-project/commit/d85d143ad99006a5500b375bd199c087adf7778f
Author: Jay Foad <jay.foad at amd.com>
Date: 2023-09-26 (Tue, 26 Sep 2023)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.h
M llvm/lib/Target/AMDGPU/AMDGPU.td
A llvm/lib/Target/AMDGPU/AMDGPUImageIntrinsicOptimizer.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/CMakeLists.txt
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.load.2dmsaa.ll
M llvm/tools/opt/opt.cpp
Log Message:
-----------
[AMDGPU] New image intrinsic optimizer pass (#67151)
Implement a new pass to combine multiple image_load_2dmsaa and
2darraymsaa intrinsic calls into a single image_msaa_load if:
- they refer to the same vaddr except for sample_id,
- they use a constant sample_id and they fall into the same group,
- they have the same dmask and the number of instructions and the
number of vaddr/vdata dword transfers is reduced by the combine
This should be valid on all GFX11 but a hardware bug renders it
unworkable on GFX11.0.* so it is only enabled for GFX11.5.
Based on a patch by Rodrigo Dominguez!
More information about the All-commits
mailing list