[all-commits] [llvm/llvm-project] 96aaeb: [MachineCopyPropagation] Eliminate spillage copies...
bzEq via All-commits
all-commits at lists.llvm.org
Tue Feb 7 19:34:38 PST 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 96aaebd12e734610fe0ef61329f99fdac253ef9f
https://github.com/llvm/llvm-project/commit/96aaebd12e734610fe0ef61329f99fdac253ef9f
Author: Kai Luo <lkail at cn.ibm.com>
Date: 2023-02-08 (Wed, 08 Feb 2023)
Changed paths:
M llvm/include/llvm/CodeGen/TargetSubtargetInfo.h
M llvm/lib/CodeGen/MachineCopyPropagation.cpp
M llvm/lib/Target/PowerPC/PPCSubtarget.h
A llvm/test/CodeGen/PowerPC/mcp-elim-eviction-chain.mir
Log Message:
-----------
[MachineCopyPropagation] Eliminate spillage copies that might be caused by eviction chain
Remove spill-reload like copy chains. For example
```
r0 = COPY r1
r1 = COPY r2
r2 = COPY r3
r3 = COPY r4
<def-use r4>
r4 = COPY r3
r3 = COPY r2
r2 = COPY r1
r1 = COPY r0
```
will be folded into
```
r0 = COPY r1
r1 = COPY r4
<def-use r4>
r4 = COPY r1
r1 = COPY r0
```
Reviewed By: qcolombet
Differential Revision: https://reviews.llvm.org/D122118
More information about the All-commits
mailing list