[AMDGPU] Use v_mad_u64_u32 for IMAD32
authorStanislav Mekhanoshin <Stanislav.Mekhanoshin@amd.com>
Mon, 6 Jun 2022 23:31:25 +0000 (16:31 -0700)
committerStanislav Mekhanoshin <Stanislav.Mekhanoshin@amd.com>
Thu, 9 Jun 2022 18:39:49 +0000 (11:39 -0700)
commit23db8e4b43225fd5e4df8cab52e0b8517ba77d49
treeda519f5cdbfdd9614c10c166cccc8b0658b8df0a
parent06aa6ec87dba8ee34e4ea4bd47e6c9f2c06ebd7c
[AMDGPU] Use v_mad_u64_u32 for IMAD32

Nic Curtis done the experiments to prove it is faster than a
separate mul and add.

Fixes: SWDEV-332806

Differential Revision: https://reviews.llvm.org/D127253
llvm/lib/Target/AMDGPU/VOP3Instructions.td
llvm/test/CodeGen/AMDGPU/atomic_optimizations_buffer.ll
llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
llvm/test/CodeGen/AMDGPU/atomic_optimizations_raw_buffer.ll
llvm/test/CodeGen/AMDGPU/atomic_optimizations_struct_buffer.ll
llvm/test/CodeGen/AMDGPU/mad_64_32.ll
llvm/test/CodeGen/AMDGPU/mad_u64_u32.ll [new file with mode: 0644]
llvm/test/CodeGen/AMDGPU/mul24-pass-ordering.ll
llvm/test/CodeGen/AMDGPU/stack-pointer-offset-relative-frameindex.ll
llvm/test/CodeGen/AMDGPU/udiv.ll