aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2008-04-03 16:39:43 +0000
committerEvan Cheng <evan.cheng@apple.com>2008-04-03 16:39:43 +0000
commit419852ca8a01aecde4c0e20af6b7bd6450e70f87 (patch)
tree30095fdd0416929819bcb0a3364a25ff0834712b /include
parent576a27043d95d0b9b8a010bccfd38ed9c0afa739 (diff)
downloadexternal_llvm-419852ca8a01aecde4c0e20af6b7bd6450e70f87.zip
external_llvm-419852ca8a01aecde4c0e20af6b7bd6450e70f87.tar.gz
external_llvm-419852ca8a01aecde4c0e20af6b7bd6450e70f87.tar.bz2
- Treat a live range defined by an implicit_def as a zero-sized one.
- Eliminate an implicit_def when it's being spilled. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49166 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r--include/llvm/CodeGen/LiveIntervalAnalysis.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/llvm/CodeGen/LiveIntervalAnalysis.h b/include/llvm/CodeGen/LiveIntervalAnalysis.h
index ee35377..2938fca 100644
--- a/include/llvm/CodeGen/LiveIntervalAnalysis.h
+++ b/include/llvm/CodeGen/LiveIntervalAnalysis.h
@@ -394,6 +394,10 @@ namespace llvm {
BitVector &RestoreMBBs,
std::map<unsigned,std::vector<SRInfo> >&RestoreIdxes);
+ /// removeSpilledImpDefs - Remove IMPLICIT_DEF instructions which are being
+ /// spilled.
+ void removeSpilledImpDefs(const LiveInterval &li, VirtRegMap &vrm);
+
/// rewriteImplicitOps - Rewrite implicit use operands of MI (i.e. uses of
/// interval on to-be re-materialized operands of MI) with new register.
void rewriteImplicitOps(const LiveInterval &li,