[all-commits] [llvm/llvm-project] dbed43: [LiveIntervals] Find better anchoring end points w...
Jay Foad via All-commits
all-commits at lists.llvm.org
Mon Jul 18 11:37:41 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: dbed4326dd9c94437a944882f534e2cb91267526
https://github.com/llvm/llvm-project/commit/dbed4326dd9c94437a944882f534e2cb91267526
Author: Jay Foad <jay.foad at amd.com>
Date: 2022-07-18 (Mon, 18 Jul 2022)
Changed paths:
M llvm/lib/CodeGen/LiveIntervals.cpp
M llvm/lib/CodeGen/SlotIndexes.cpp
M llvm/test/CodeGen/Hexagon/mulhs.ll
M llvm/unittests/MI/LiveIntervalTest.cpp
Log Message:
-----------
[LiveIntervals] Find better anchoring end points when repairing ranges
r175673 changed repairIntervalsInRange to find anchoring end points for
ranges automatically, but the calculation of Begin included the first
instruction found that already had an index. This patch changes it to
exclude that instruction:
1. For symmetry, so that the half open range [Begin,End) only includes
instructions that do not already have indexes.
2. As a possible performance improvement, since repairOldRegInRange
will scan fewer instructions.
3. Because repairOldRegInRange hits assertion failures in some cases
when it sees a def that already has a live interval.
(3) fixes about ten tests in the CodeGen lit test suite when
-early-live-intervals is forced on.
Differential Revision: https://reviews.llvm.org/D110182
More information about the All-commits
mailing list