[all-commits] [llvm/llvm-project] b2b1a8: [LiveIntervals] Improve repair after convertToThre...
Jay Foad via All-commits
all-commits at lists.llvm.org
Tue Sep 28 00:20:49 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: b2b1a8b833905e159fe445ba1d0baae427a118cc
https://github.com/llvm/llvm-project/commit/b2b1a8b833905e159fe445ba1d0baae427a118cc
Author: Jay Foad <jay.foad at amd.com>
Date: 2021-09-28 (Tue, 28 Sep 2021)
Changed paths:
M llvm/lib/CodeGen/TwoAddressInstructionPass.cpp
M llvm/test/CodeGen/X86/zext-trunc.ll
Log Message:
-----------
[LiveIntervals] Improve repair after convertToThreeAddress
After TwoAddressInstructionPass calls
TargetInstrInfo::convertToThreeAddress, improve the LiveIntervals repair
to cope with convertToThreeAddress creating more than one new
instruction.
This mostly seems to benefit X86. For example in
test/CodeGen/X86/zext-trunc.ll it converts:
%4:gr32 = ADD32rr %3:gr32(tied-def 0), %2:gr32, implicit-def dead $eflags
to:
undef %6.sub_32bit:gr64 = COPY %3:gr32
undef %7.sub_32bit:gr64_nosp = COPY %2:gr32
%4:gr32 = LEA64_32r killed %6:gr64, 1, killed %7:gr64_nosp, 0, $noreg
Differential Revision: https://reviews.llvm.org/D110335
Commit: 20c02807333a47000879e0f673cdf2d6b07148dd
https://github.com/llvm/llvm-project/commit/20c02807333a47000879e0f673cdf2d6b07148dd
Author: Jay Foad <jay.foad at amd.com>
Date: 2021-09-28 (Tue, 28 Sep 2021)
Changed paths:
M llvm/lib/CodeGen/TwoAddressInstructionPass.cpp
M llvm/test/CodeGen/Hexagon/swp-vect-dotprod.ll
M llvm/test/CodeGen/SystemZ/subregliveness-01.ll
M llvm/test/CodeGen/Thumb2/mve-multivec-spill.ll
Log Message:
-----------
[LiveIntervals] Repair subreg ranges in processTiedPairs
In TwoAddressInstructionPass::processTiedPairs, update subranges of the
live interval for RegB as well as the main range.
This is a small step towards switching TwoAddressInstructionPass over
from LiveVariables to LiveIntervals. Currently this path is only tested
if you explicitly enable -early-live-intervals.
Differential Revision: https://reviews.llvm.org/D110526
Compare: https://github.com/llvm/llvm-project/compare/90babc86c3fe...20c02807333a
More information about the All-commits
mailing list