[all-commits] [llvm/llvm-project] 4f198b: [X86] Pass to transform amx intrinsics to scalar o...
yubingex007-a11y via All-commits
all-commits at lists.llvm.org
Mon Mar 15 19:41:16 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 4f198b0c27b04e830a3069aaf4b39cf203eaae4a
https://github.com/llvm/llvm-project/commit/4f198b0c27b04e830a3069aaf4b39cf203eaae4a
Author: Bing1 Yu <bing1.yu at intel.com>
Date: 2021-03-16 (Tue, 16 Mar 2021)
Changed paths:
M llvm/include/llvm/CodeGen/Passes.h
M llvm/lib/Target/X86/CMakeLists.txt
M llvm/lib/Target/X86/X86.h
A llvm/lib/Target/X86/X86LowerAMXIntrinsics.cpp
M llvm/lib/Target/X86/X86LowerAMXType.cpp
M llvm/lib/Target/X86/X86TargetMachine.cpp
A llvm/test/CodeGen/X86/AMX/amx-low-intrinsics-no-amx-bitcast.ll
A llvm/test/CodeGen/X86/AMX/amx-low-intrinsics.ll
M llvm/test/CodeGen/X86/AMX/amx-type.ll
M llvm/test/CodeGen/X86/O0-pipeline.ll
M llvm/test/CodeGen/X86/opt-pipeline.ll
M llvm/tools/opt/opt.cpp
Log Message:
-----------
[X86] Pass to transform amx intrinsics to scalar operation.
This pass runs in any situations but we skip it when it is not O0 and the
function doesn't have optnone attribute. With -O0, the def of shape to amx
intrinsics is near the amx intrinsics code. We are not able to find a
point which post-dominate all the shape and dominate all amx intrinsics.
To decouple the dependency of the shape, we transform amx intrinsics
to scalar operation, so that compiling doesn't fail. In long term, we
should improve fast register allocation to allocate amx register.
Reviewed By: pengfei
Differential Revision: https://reviews.llvm.org/D93594
More information about the All-commits
mailing list