LLVM 22.0.0git
RDFGraph.h File Reference
#include "RDFRegisters.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/MC/LaneBitmask.h"
#include "llvm/Support/Allocator.h"
#include "llvm/Support/MathExtras.h"
#include <cassert>
#include <cstdint>
#include <cstring>
#include <map>
#include <memory>
#include <set>
#include <unordered_map>
#include <utility>
#include <vector>

Go to the source code of this file.

Classes

struct  llvm::rdf::NodeAttrs
struct  llvm::rdf::BuildOptions
struct  llvm::rdf::NodeAddr< T >
struct  llvm::rdf::NodeAllocator
struct  llvm::rdf::TargetOperandInfo
struct  llvm::rdf::PackedRegisterRef
struct  llvm::rdf::LaneMaskIndex
struct  llvm::rdf::NodeBase
struct  llvm::rdf::NodeBase::Def_struct
struct  llvm::rdf::NodeBase::PhiU_struct
struct  llvm::rdf::NodeBase::Code_struct
struct  llvm::rdf::NodeBase::Ref_struct
struct  llvm::rdf::RefNode
struct  llvm::rdf::DefNode
struct  llvm::rdf::UseNode
struct  llvm::rdf::PhiUseNode
struct  llvm::rdf::CodeNode
struct  llvm::rdf::InstrNode
struct  llvm::rdf::PhiNode
struct  llvm::rdf::StmtNode
struct  llvm::rdf::BlockNode
struct  llvm::rdf::FuncNode
struct  llvm::rdf::DataFlowGraph
struct  llvm::rdf::DataFlowGraph::Config
struct  llvm::rdf::DataFlowGraph::DefStack
struct  llvm::rdf::Print< T >
struct  llvm::rdf::PrintNode< T >

Namespaces

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

Typedefs

using llvm::rdf::NodeId = uint32_t
using llvm::rdf::Node = NodeAddr<NodeBase *>
using llvm::rdf::Ref = NodeAddr<RefNode *>
using llvm::rdf::Def = NodeAddr<DefNode *>
using llvm::rdf::Use = NodeAddr<UseNode *>
using llvm::rdf::PhiUse = NodeAddr<PhiUseNode *>
using llvm::rdf::Code = NodeAddr<CodeNode *>
using llvm::rdf::Instr = NodeAddr<InstrNode *>
using llvm::rdf::Phi = NodeAddr<PhiNode *>
using llvm::rdf::Stmt = NodeAddr<StmtNode *>
using llvm::rdf::Block = NodeAddr<BlockNode *>
using llvm::rdf::Func = NodeAddr<FuncNode *>
using llvm::rdf::RegisterSet = std::set<RegisterRef, RegisterRefLess>
using llvm::rdf::NodeList = SmallVector<Node, 4>
using llvm::rdf::NodeSet = std::set<NodeId>

Functions

template<typename T>
 llvm::rdf::Print (const T &, const DataFlowGraph &) -> Print< T >
raw_ostreamllvm::rdf::operator<< (raw_ostream &OS, const Print< RegisterRef > &P)
raw_ostreamllvm::rdf::operator<< (raw_ostream &OS, const Print< NodeId > &P)
raw_ostreamllvm::rdf::operator<< (raw_ostream &OS, const Print< Def > &P)
raw_ostreamllvm::rdf::operator<< (raw_ostream &OS, const Print< Use > &P)
raw_ostreamllvm::rdf::operator<< (raw_ostream &OS, const Print< PhiUse > &P)
raw_ostreamllvm::rdf::operator<< (raw_ostream &OS, const Print< Ref > &P)
raw_ostreamllvm::rdf::operator<< (raw_ostream &OS, const Print< NodeList > &P)
raw_ostreamllvm::rdf::operator<< (raw_ostream &OS, const Print< NodeSet > &P)
raw_ostreamllvm::rdf::operator<< (raw_ostream &OS, const Print< Phi > &P)
raw_ostreamllvm::rdf::operator<< (raw_ostream &OS, const Print< Stmt > &P)
raw_ostreamllvm::rdf::operator<< (raw_ostream &OS, const Print< Instr > &P)
raw_ostreamllvm::rdf::operator<< (raw_ostream &OS, const Print< Block > &P)
raw_ostreamllvm::rdf::operator<< (raw_ostream &OS, const Print< Func > &P)
raw_ostreamllvm::rdf::operator<< (raw_ostream &OS, const Print< RegisterSet > &P)
raw_ostreamllvm::rdf::operator<< (raw_ostream &OS, const Print< RegisterAggr > &P)
raw_ostreamllvm::rdf::operator<< (raw_ostream &OS, const Print< DataFlowGraph::DefStack > &P)