LLVM 19.0.0git
Classes | Namespaces | Functions
RegAllocPBQP.h File Reference
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/Hashing.h"
#include "llvm/CodeGen/PBQP/CostAllocator.h"
#include "llvm/CodeGen/PBQP/Graph.h"
#include "llvm/CodeGen/PBQP/Math.h"
#include "llvm/CodeGen/PBQP/ReductionRules.h"
#include "llvm/CodeGen/PBQP/Solution.h"
#include "llvm/CodeGen/Register.h"
#include "llvm/MC/MCRegister.h"
#include "llvm/Support/ErrorHandling.h"
#include <algorithm>
#include <cassert>
#include <cstddef>
#include <limits>
#include <memory>
#include <set>
#include <vector>

Go to the source code of this file.

Classes

class  llvm::PBQP::RegAlloc::MatrixMetadata
 Metadata to speed allocatability test. More...
 
class  llvm::PBQP::RegAlloc::AllowedRegVector
 Holds a vector of the allowed physical regs for a vreg. More...
 
class  llvm::PBQP::RegAlloc::GraphMetadata
 Holds graph-level metadata relevant to PBQP RA problems. More...
 
class  llvm::PBQP::RegAlloc::NodeMetadata
 Holds solver state and other metadata relevant to each PBQP RA node. More...
 
class  llvm::PBQP::RegAlloc::RegAllocSolverImpl
 
struct  llvm::PBQP::RegAlloc::RegAllocSolverImpl::EdgeMetadata
 
class  llvm::PBQP::RegAlloc::PBQPRAGraph
 

Namespaces

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

Functions

unsigned llvm::PBQP::RegAlloc::getSpillOptionIdx ()
 Spill option index.
 
hash_code llvm::PBQP::RegAlloc::hash_value (const AllowedRegVector &OptRegs)
 
Solution llvm::PBQP::RegAlloc::solve (PBQPRAGraph &G)
 
FunctionPassllvm::createPBQPRegisterAllocator (char *customPassID=nullptr)
 Create a PBQP register allocator instance.