LLVM API Documentation
#include "AllocInfo.h"#include "IGNode.h"#include "PhyRegAlloc.h"#include "RegAllocCommon.h"#include "RegClass.h"#include "../LiveVar/FunctionLiveVarInfo.h"#include "../MachineCodeForInstruction.h"#include "../MachineFunctionInfo.h"#include "../SparcV9InstrInfo.h"#include "../SparcV9TmpInstr.h"#include "llvm/Constants.h"#include "llvm/DerivedTypes.h"#include "llvm/Instructions.h"#include "llvm/Module.h"#include "llvm/Type.h"#include "llvm/Analysis/LoopInfo.h"#include "llvm/CodeGen/MachineFunction.h"#include "llvm/CodeGen/MachineInstr.h"#include "llvm/CodeGen/MachineInstrBuilder.h"#include "../MachineInstrAnnot.h"#include "llvm/CodeGen/Passes.h"#include "llvm/Support/InstIterator.h"#include "llvm/Target/TargetInstrInfo.h"#include "llvm/Support/CommandLine.h"#include "llvm/ADT/SetOperations.h"#include "llvm/ADT/STLExtras.h"#include "llvm/ADT/Statistic.h"#include <cmath>#include <iostream>Include dependency graph for PhyRegAlloc.cpp:

Go to the source code of this file.
Namespaces | |
| namespace | llvm |
Functions | |
| FunctionPass * | llvm::getRegisterAllocator (TargetMachine &T) |
| void | llvm::InsertBefore (MachineInstr *newMI, MachineBasicBlock &MBB, MachineBasicBlock::iterator &MII) |
| void | llvm::InsertAfter (MachineInstr *newMI, MachineBasicBlock &MBB, MachineBasicBlock::iterator &MII) |
| void | llvm::PrependInstructions (std::vector< MachineInstr * > &IBef, MachineBasicBlock &MBB, MachineBasicBlock::iterator &MII, const std::string &msg) |
| void | llvm::AppendInstructions (std::vector< MachineInstr * > &IAft, MachineBasicBlock &MBB, MachineBasicBlock::iterator &MII, const std::string &msg) |
| static void | llvm::markRegisterUsed (int RegNo, RegClass *RC, int RegType, const SparcV9RegInfo &TRI) |
Variables | |
| Statistic | llvm::RASpills ("regalloc-spills","Number of registers spilled") |
| RegAllocDebugLevel_t | llvm::DEBUG_RA |
| static cl::opt< RegAllocDebugLevel_t, true > | llvm::DRA_opt ("dregalloc", cl::Hidden, cl::location(DEBUG_RA), cl::desc("enable register allocation debugging information"), cl::values(clEnumValN(RA_DEBUG_None,"n","disable debug output"), clEnumValN(RA_DEBUG_Results,"y","debug output for allocation results"), clEnumValN(RA_DEBUG_Coloring,"c","debug output for graph coloring step"), clEnumValN(RA_DEBUG_Interference,"ig","debug output for interference graphs"), clEnumValN(RA_DEBUG_LiveRanges,"lr","debug output for live ranges"), clEnumValN(RA_DEBUG_Verbose,"v","extra debug output"), clEnumValEnd)) |
| PhyRegAlloc::SavedStateMapTy | llvm::ExportedFnAllocState |
| bool | llvm::SaveRegAllocState = false |
| bool | llvm::SaveStateToModule = true |
| static cl::opt< bool, true > | llvm::SaveRegAllocStateOpt ("save-ra-state", cl::Hidden, cl::location(SaveRegAllocState), cl::init(false), cl::desc("write reg. allocator state into module")) |