LLVM API Documentation

LiveIntervalAnalysis.cpp File Reference

#include "llvm/CodeGen/LiveIntervalAnalysis.h"
#include "VirtRegMap.h"
#include "llvm/Value.h"
#include "llvm/Analysis/LoopInfo.h"
#include "llvm/CodeGen/LiveVariables.h"
#include "llvm/CodeGen/MachineFrameInfo.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/Passes.h"
#include "llvm/CodeGen/SSARegMap.h"
#include "llvm/Target/MRegisterInfo.h"
#include "llvm/Target/TargetInstrInfo.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/ADT/STLExtras.h"
#include <algorithm>
#include <cmath>
#include <iostream>

Include dependency graph for LiveIntervalAnalysis.cpp:

Go to the source code of this file.

Defines

#define DEBUG_TYPE   "liveintervals"

Typedefs

typedef std::pair< unsigned,
MachineBasicBlock * > 
DepthMBBPair

Variables

RegisterAnalysis< LiveIntervalsX ("liveintervals","Live Interval Analysis")
Statistic numIntervals ("liveintervals","Number of original intervals")
Statistic numIntervalsAfter ("liveintervals","Number of intervals after coalescing")
Statistic numJoins ("liveintervals","Number of interval joins performed")
Statistic numPeep ("liveintervals","Number of identity moves eliminated after coalescing")
Statistic numFolded ("liveintervals","Number of loads/stores folded into instructions")
cl::opt< bool > EnableJoining ("join-liveintervals", cl::desc("Join compatible live intervals"), cl::init(true))


Define Documentation

#define DEBUG_TYPE   "liveintervals"

Definition at line 18 of file LiveIntervalAnalysis.cpp.


Typedef Documentation

typedef std::pair<unsigned, MachineBasicBlock*> DepthMBBPair

Definition at line 766 of file LiveIntervalAnalysis.cpp.


Variable Documentation

cl::opt<bool> EnableJoining("join-liveintervals", cl::desc("Join compatible live intervals"), cl::init(true)) [static]

Referenced by llvm::LiveIntervals::runOnMachineFunction().

Statistic numFolded("liveintervals","Number of loads/stores folded into instructions") [static]

Referenced by llvm::LiveIntervals::addIntervalsForSpills().

Statistic numIntervals("liveintervals","Number of original intervals") [static]

Referenced by llvm::LiveIntervals::runOnMachineFunction().

Statistic numIntervalsAfter("liveintervals","Number of intervals after coalescing") [static]

Referenced by llvm::LiveIntervals::runOnMachineFunction().

Statistic numJoins("liveintervals","Number of interval joins performed") [static]

Statistic numPeep("liveintervals","Number of identity moves eliminated after coalescing") [static]

Referenced by llvm::LiveIntervals::runOnMachineFunction().

RegisterAnalysis<LiveIntervals> X("liveintervals","Live Interval Analysis") [static]