LLVM 19.0.0git
Public Member Functions | Static Public Member Functions | List of all members
llvm::SymbolTableListTraits< ValueSubClass, Args > Class Template Reference

#include "llvm/IR/SymbolTableListTraits.h"

Inheritance diagram for llvm::SymbolTableListTraits< ValueSubClass, Args >:
Inheritance graph
[legend]

Public Member Functions

 SymbolTableListTraits ()=default
 
void addNodeToList (ValueSubClass *V)
 
void removeNodeFromList (ValueSubClass *V)
 
void transferNodesFromList (SymbolTableListTraits &L2, iterator first, iterator last)
 
template<typename TPtr >
void setSymTabObject (TPtr *, TPtr)
 setSymTabObject - This is called when (f.e.) the parent of a basic block changes.
 

Static Public Member Functions

static ValueSymbolTabletoPtr (ValueSymbolTable *P)
 
static ValueSymbolTabletoPtr (ValueSymbolTable &R)
 
- Static Public Member Functions inherited from llvm::ilist_alloc_traits< ValueSubClass >
static void deleteNode (ValueSubClass *V)
 

Detailed Description

template<typename ValueSubClass, typename... Args>
class llvm::SymbolTableListTraits< ValueSubClass, Args >

Definition at line 67 of file SymbolTableListTraits.h.

Constructor & Destructor Documentation

◆ SymbolTableListTraits()

template<typename ValueSubClass , typename... Args>
llvm::SymbolTableListTraits< ValueSubClass, Args >::SymbolTableListTraits ( )
default

References llvm::Offset.

Member Function Documentation

◆ addNodeToList()

template<typename ValueSubClass , typename... Args>
void llvm::SymbolTableListTraits< ValueSubClass, Args >::addNodeToList ( ValueSubClass *  V)

◆ removeNodeFromList()

template<typename ValueSubClass , typename... Args>
void llvm::SymbolTableListTraits< ValueSubClass, Args >::removeNodeFromList ( ValueSubClass *  V)

Definition at line 79 of file SymbolTableListTraitsImpl.h.

References getSymTab().

◆ setSymTabObject()

template<typename ValueSubClass , typename... Args>
template<typename TPtr >
void llvm::SymbolTableListTraits< ValueSubClass, Args >::setSymTabObject ( TPtr *  Dest,
TPtr  Src 
)

setSymTabObject - This is called when (f.e.) the parent of a basic block changes.

This requires us to remove all the instruction symtab entries from the current function and reinsert them into the new function.

Definition at line 33 of file SymbolTableListTraitsImpl.h.

References getSymTab(), and I.

◆ toPtr() [1/2]

template<typename ValueSubClass , typename... Args>
static ValueSymbolTable * llvm::SymbolTableListTraits< ValueSubClass, Args >::toPtr ( ValueSymbolTable R)
inlinestatic

Definition at line 106 of file SymbolTableListTraits.h.

◆ toPtr() [2/2]

template<typename ValueSubClass , typename... Args>
static ValueSymbolTable * llvm::SymbolTableListTraits< ValueSubClass, Args >::toPtr ( ValueSymbolTable P)
inlinestatic

Definition at line 105 of file SymbolTableListTraits.h.

References P.

◆ transferNodesFromList()

template<typename ValueSubClass , typename... Args>
void llvm::SymbolTableListTraits< ValueSubClass, Args >::transferNodesFromList ( SymbolTableListTraits< ValueSubClass, Args > &  L2,
iterator  first,
iterator  last 
)

Definition at line 88 of file SymbolTableListTraitsImpl.h.

References llvm::invalidateParentIListOrdering().


The documentation for this class was generated from the following files: