LLVM  6.0.0svn
Classes | Namespaces | Typedefs
ScheduleDAGInstrs.h File Reference
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/PointerIntPair.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/SparseMultiSet.h"
#include "llvm/ADT/SparseSet.h"
#include "llvm/CodeGen/LivePhysRegs.h"
#include "llvm/CodeGen/MachineBasicBlock.h"
#include "llvm/CodeGen/ScheduleDAG.h"
#include "llvm/CodeGen/TargetSchedule.h"
#include "llvm/MC/LaneBitmask.h"
#include "llvm/Target/TargetRegisterInfo.h"
#include <cassert>
#include <cstdint>
#include <list>
#include <utility>
#include <vector>
Include dependency graph for ScheduleDAGInstrs.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  llvm::VReg2SUnit
 An individual mapping from virtual register number to SUnit. More...
 
struct  llvm::VReg2SUnitOperIdx
 Mapping from virtual register to SUnit including an operand index. More...
 
struct  llvm::PhysRegSUOper
 Record a physical register access. More...
 
struct  llvm::UnderlyingObject
 
class  llvm::ScheduleDAGInstrs
 A ScheduleDAG for scheduling lists of MachineInstr. More...
 

Namespaces

 llvm
 Compute iterated dominance frontiers using a linear time algorithm.
 

Typedefs

using llvm::Reg2SUnitsMap = SparseMultiSet< PhysRegSUOper, identity< unsigned >, uint16_t >
 Use a SparseMultiSet to track physical registers. More...
 
using llvm::VReg2SUnitMap = SparseSet< VReg2SUnit, VirtReg2IndexFunctor >
 Use SparseSet as a SparseMap by relying on the fact that it never compares ValueT's, only unsigned keys. More...
 
using llvm::VReg2SUnitMultiMap = SparseMultiSet< VReg2SUnit, VirtReg2IndexFunctor >
 Track local uses of virtual registers. More...
 
using llvm::VReg2SUnitOperIdxMultiMap = SparseMultiSet< VReg2SUnitOperIdx, VirtReg2IndexFunctor >
 
using llvm::ValueType = PointerUnion< const Value *, const PseudoSourceValue * >
 
using llvm::UnderlyingObjectsVector = SmallVector< UnderlyingObject, 4 >