LLVM  8.0.1
Classes | Namespaces | Typedefs | Enumerations
ResourceManager.h File Reference

The classes here represent processor resource units and their management strategy. More...

#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/MC/MCSchedule.h"
#include "llvm/MCA/Instruction.h"
#include "llvm/MCA/Support.h"
Include dependency graph for ResourceManager.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  llvm::mca::ResourceStrategy
 Resource allocation strategy used by hardware scheduler resources. More...
 
class  llvm::mca::DefaultResourceStrategy
 Default resource allocation strategy used by processor resource groups and processor resources with multiple units. More...
 
class  llvm::mca::ResourceState
 A processor resource descriptor. More...
 
class  llvm::mca::ResourceManager
 A resource manager for processor resource units and groups. More...
 

Namespaces

 llvm
 This class represents lattice values for constants.
 
 llvm::mca
 

Typedefs

typedef std::pair< uint64_t, uint64_t > llvm::mca::ResourceRef
 A resource unit identifier. More...
 
typedef std::pair< unsigned, unsignedllvm::mca::BufferUsageEntry
 

Enumerations

enum  llvm::mca::ResourceStateEvent { llvm::mca::RS_BUFFER_AVAILABLE, llvm::mca::RS_BUFFER_UNAVAILABLE, llvm::mca::RS_RESERVED }
 Used to notify the internal state of a processor resource. More...
 

Detailed Description

The classes here represent processor resource units and their management strategy.

These classes are managed by the Scheduler.

Definition in file ResourceManager.h.