//===----------------------------------------------------------------------===//
#include "llvm/System/IncludeFile.h"
-#include "llvm/CodeGen/MachineInstr.h"
-#include "llvm/CodeGen/LiveIntervalAnalysis.h"
-#include "llvm/CodeGen/LiveVariables.h"
-#include "llvm/Target/MRegisterInfo.h"
-#include "llvm/Support/Debug.h"
+#include "llvm/CodeGen/LiveInterval.h"
+#include "llvm/ADT/SmallPtrSet.h"
#ifndef LLVM_CODEGEN_REGISTER_COALESCER_H
#define LLVM_CODEGEN_REGISTER_COALESCER_H
-namespace llvm
-{
+namespace llvm {
+
class MachineFunction;
class RegallocQuery;
class AnalysisUsage;
- class LiveIntervals;
class MachineInstr;
- class MRegisterInfo;
/// An abstract interface for register coalescers. Coalescers must
/// implement this interface to be part of the coalescer analysis
/// int getNumberOfInterferences(const LiveInterval &a) const {
/// IntervalSet intervals;
/// getInterferences(intervals, a);
- /// return(intervals.size());
+ /// return intervals.size();
/// };
/// };
///
virtual bool interfere(const LiveInterval &a,
const LiveInterval &b) const {
// A naive test
- return(a.overlaps(b));
+ return a.overlaps(b);
};
/// Return the set of intervals that interfere with this one.