diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2011-03-02 23:05:19 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2011-03-02 23:05:19 +0000 |
commit | 503b143a621761dafe38070e6093757565f95928 (patch) | |
tree | 8d54bb5ec2fa57b5aebd2e90ccc42e0bca17e35d /llvm/lib/CodeGen/SplitKit.h | |
parent | 3648263a3e03be0f661ea0a360fa550ca36d0258 (diff) | |
download | bcm5719-llvm-503b143a621761dafe38070e6093757565f95928.tar.gz bcm5719-llvm-503b143a621761dafe38070e6093757565f95928.zip |
Transfer simply defined values directly without recomputing liveness and SSA.
Values that map to a single new value in a new interval after splitting don't
need new PHIDefs, and if the parent value was never rematerialized the live
range will be the same.
llvm-svn: 126894
Diffstat (limited to 'llvm/lib/CodeGen/SplitKit.h')
-rw-r--r-- | llvm/lib/CodeGen/SplitKit.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/SplitKit.h b/llvm/lib/CodeGen/SplitKit.h index 3a4d710de9d..05de1505236 100644 --- a/llvm/lib/CodeGen/SplitKit.h +++ b/llvm/lib/CodeGen/SplitKit.h @@ -246,12 +246,16 @@ class SplitEditor { SlotIndex Idx, const MachineBasicBlock *IdxMBB); + /// transferSimpleValues - Transfer simply defined values to the new ranges. + /// Return true if any complex ranges were skipped. + bool transferSimpleValues(); + /// extendPHIKillRanges - Extend the ranges of all values killed by original /// parent PHIDefs. void extendPHIKillRanges(); /// rewriteAssigned - Rewrite all uses of Edit.getReg() to assigned registers. - void rewriteAssigned(); + void rewriteAssigned(bool ExtendRanges); /// rewriteComponents - Rewrite all uses of Intv[0] according to the eq /// classes in ConEQ. |