diff options
author | Evan Cheng <evan.cheng@apple.com> | 2007-12-05 03:22:34 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2007-12-05 03:22:34 +0000 |
commit | 018f9b020bb12b731b0a7081578e5f82fb35092d (patch) | |
tree | 5cf58e923ef6ad5f63c7cf3c83aa6f68266b5315 /include/llvm/CodeGen | |
parent | d64b5c82b97ad1b74eb9fd2f23257a7899b0c307 (diff) | |
download | external_llvm-018f9b020bb12b731b0a7081578e5f82fb35092d.zip external_llvm-018f9b020bb12b731b0a7081578e5f82fb35092d.tar.gz external_llvm-018f9b020bb12b731b0a7081578e5f82fb35092d.tar.bz2 |
- Mark last use of a split interval as kill instead of letting spiller track it.
This allows an important optimization to be re-enabled.
- If all uses / defs of a split interval can be folded, give the interval a
low spill weight so it would not be picked in case spilling is needed (avoid
pushing other intervals in the same BB to be spilled).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44601 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/CodeGen')
-rw-r--r-- | include/llvm/CodeGen/LiveIntervalAnalysis.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/llvm/CodeGen/LiveIntervalAnalysis.h b/include/llvm/CodeGen/LiveIntervalAnalysis.h index a40d0ab..19865e5 100644 --- a/include/llvm/CodeGen/LiveIntervalAnalysis.h +++ b/include/llvm/CodeGen/LiveIntervalAnalysis.h @@ -278,6 +278,8 @@ namespace llvm { SmallVector<unsigned, 2> &Ops, bool isSS, int Slot, unsigned Reg); + /// canFoldMemoryOperand - Returns true if the specified load / store + /// folding is possible. bool canFoldMemoryOperand(MachineInstr *MI, SmallVector<unsigned, 2> &Ops) const; |