LLVM 20.0.0git
Classes | Namespaces | Variables
MachinePipeliner.h File Reference
#include "llvm/ADT/SetVector.h"
#include "llvm/CodeGen/DFAPacketizer.h"
#include "llvm/CodeGen/MachineDominators.h"
#include "llvm/CodeGen/MachineOptimizationRemarkEmitter.h"
#include "llvm/CodeGen/MachineScheduler.h"
#include "llvm/CodeGen/RegisterClassInfo.h"
#include "llvm/CodeGen/ScheduleDAGInstrs.h"
#include "llvm/CodeGen/ScheduleDAGMutation.h"
#include "llvm/CodeGen/TargetInstrInfo.h"
#include "llvm/CodeGen/WindowScheduler.h"
#include "llvm/InitializePasses.h"
#include <deque>

Go to the source code of this file.

Classes

class  llvm::MachinePipeliner
 The main class in the implementation of the target independent software pipeliner pass. More...
 
struct  llvm::MachinePipeliner::LoopInfo
 Cache the target analysis information about the loop. More...
 
class  llvm::SwingSchedulerDAG
 This class builds the dependence graph for the instructions in a loop, and attempts to schedule the instructions using the SMS algorithm. More...
 
class  llvm::NodeSet
 A NodeSet contains a set of SUnit DAG nodes with additional information that assigns a priority to the set. More...
 
class  llvm::ResourceManager
 
class  llvm::SMSchedule
 This class represents the scheduled code. More...
 

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
 

Variables

cl::opt< boolllvm::SwpEnableCopyToPhi
 
cl::opt< int > llvm::SwpForceIssueWidth
 A command line argument to force pipeliner to use specified issue width.
 
static const int llvm::DefaultProcResSize = 16