Add a new differingRegisterClasses method
make overlapsAliases take pointers instead of references
fix indentation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15153 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/LiveIntervalAnalysis.h b/lib/CodeGen/LiveIntervalAnalysis.h
index b4228ce..c9db013 100644
--- a/lib/CodeGen/LiveIntervalAnalysis.h
+++ b/lib/CodeGen/LiveIntervalAnalysis.h
@@ -96,8 +96,8 @@
LiveInterval& getInterval(unsigned reg) {
Reg2IntervalMap::iterator I = r2iMap_.find(reg);
- assert(I != r2iMap_.end()&& "Interval does not exist for register");
- return *I->second;
+ assert(I != r2iMap_.end()&& "Interval does not exist for register");
+ return *I->second;
}
/// getInstructionIndex - returns the base index of instr
@@ -152,8 +152,12 @@
MachineBasicBlock::iterator mi,
LiveInterval& interval);
- bool overlapsAliases(const LiveInterval& lhs,
- const LiveInterval& rhs) const;
+ /// Return true if the two specified registers belong to different
+ /// register classes. The registers may be either phys or virt regs.
+ bool differingRegisterClasses(unsigned RegA, unsigned RegB) const;
+
+ bool overlapsAliases(const LiveInterval *lhs,
+ const LiveInterval *rhs) const;
LiveInterval& getOrCreateInterval(unsigned reg);