diff options
author | Owen Anderson <resistor@mac.com> | 2009-01-21 08:18:03 +0000 |
---|---|---|
committer | Owen Anderson <resistor@mac.com> | 2009-01-21 08:18:03 +0000 |
commit | 41cb4919733565c697e529494f3fcfa380f318bb (patch) | |
tree | bd9fde948aaa87c8e9fd9c99456a616583d6b954 /lib/CodeGen/PreAllocSplitting.cpp | |
parent | 691e8132e53e751d256a57abc141dfafc4bc3c6f (diff) | |
download | external_llvm-41cb4919733565c697e529494f3fcfa380f318bb.zip external_llvm-41cb4919733565c697e529494f3fcfa380f318bb.tar.gz external_llvm-41cb4919733565c697e529494f3fcfa380f318bb.tar.bz2 |
I accidentally removed this check in an earlier commit, which cause breakage in the pre alloc splitter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62678 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/PreAllocSplitting.cpp')
-rw-r--r-- | lib/CodeGen/PreAllocSplitting.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/CodeGen/PreAllocSplitting.cpp b/lib/CodeGen/PreAllocSplitting.cpp index 3c8257f..ca4f7ec 100644 --- a/lib/CodeGen/PreAllocSplitting.cpp +++ b/lib/CodeGen/PreAllocSplitting.cpp @@ -1219,6 +1219,10 @@ bool PreAllocSplitting::SplitRegLiveInterval(LiveInterval *LI) { MachineInstr *DefMI = (ValNo->def != ~0U) ? LIs->getInstructionFromIndex(ValNo->def) : NULL; + // If this would create a new join point, do not split. + if (DefMI && createsNewJoin(LR, DefMI->getParent(), Barrier->getParent())) + return false; + // Find all references in the barrier mbb. SmallPtrSet<MachineInstr*, 4> RefsInMBB; for (MachineRegisterInfo::reg_iterator I = MRI->reg_begin(CurrLI->reg), |