[all-commits] [llvm/llvm-project] 36527c: [AMDGPU][GlobalISel] Legalize memcpy family of int...
Mirko BrkuĊĦanin via All-commits
all-commits at lists.llvm.org
Tue Sep 7 03:33:35 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 36527cbe02c401671098c35b1a99853e01c291a9
https://github.com/llvm/llvm-project/commit/36527cbe02c401671098c35b1a99853e01c291a9
Author: Mirko Brkusanin <Mirko.Brkusanin at amd.com>
Date: 2021-09-07 (Tue, 07 Sep 2021)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp
A llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memcpy.mir
A llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memcpyinline.mir
A llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memmove.mir
A llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memset.mir
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memcpy.inline.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memcpy.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memmove.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memset.ll
R llvm/test/CodeGen/AMDGPU/GlobalISel/prelegalizer-combiner-memcpy-inline.mir
Log Message:
-----------
[AMDGPU][GlobalISel] Legalize memcpy family of intrinsics
Legalize G_MEMCPY, G_MEMMOVE, G_MEMSET and G_MEMCPY_INLINE.
Corresponding intrinsics are replaced by a loop that uses loads/stores in
AMDGPULowerIntrinsics pass unless their length is a constant lower then
MemIntrinsicExpandSizeThresholdOpt (default 1024). Any G_MEM* instruction that
reaches legalizer should have a const length argument and should be expanded
into appropriate number of loads + stores.
Differential Revision: https://reviews.llvm.org/D108357
More information about the All-commits
mailing list