diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2010-10-26 22:36:02 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2010-10-26 22:36:02 +0000 |
commit | 4453324e5b564b71e37cf1b786f573b5db6e3052 (patch) | |
tree | 3f03e952ed1c546777367b1d9da2f1632d6f98ca /llvm/lib/CodeGen/SplitKit.cpp | |
parent | 05561e8b7ba280bc4ab92a5eecab8ad850e77541 (diff) | |
download | llvm-4453324e5b564b71e37cf1b786f573b5db6e3052.zip llvm-4453324e5b564b71e37cf1b786f573b5db6e3052.tar.gz llvm-4453324e5b564b71e37cf1b786f573b5db6e3052.tar.bz2 |
Preserve PHIDef bits in cloned values during splitting.
llvm-svn: 117405
Diffstat (limited to 'llvm/lib/CodeGen/SplitKit.cpp')
-rw-r--r-- | llvm/lib/CodeGen/SplitKit.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/SplitKit.cpp b/llvm/lib/CodeGen/SplitKit.cpp index 798f714..0d43341 100644 --- a/llvm/lib/CodeGen/SplitKit.cpp +++ b/llvm/lib/CodeGen/SplitKit.cpp @@ -321,6 +321,10 @@ VNInfo *LiveIntervalMap::defValue(const VNInfo *ParentVNI, SlotIndex Idx) { // Create a new value. VNInfo *VNI = li_->getNextValue(Idx, 0, lis_.getVNInfoAllocator()); + // Preserve the PHIDef bit. + if (ParentVNI->isPHIDef() && Idx == ParentVNI->def) + VNI->setIsPHIDef(true); + // Use insert for lookup, so we can add missing values with a second lookup. std::pair<ValueMap::iterator,bool> InsP = valueMap_.insert(makeVV(ParentVNI, Idx == ParentVNI->def ? VNI : 0)); |