LLVM 22.0.0git
llvm::SymbolTableListTraits< ValueSubClass, Args > Class Template Reference

#include "llvm/IR/SymbolTableListTraits.h"

Inheritance diagram for llvm::SymbolTableListTraits< ValueSubClass, Args >:
[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 68 of file SymbolTableListTraits.h.

Constructor & Destructor Documentation

◆ SymbolTableListTraits()

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

References llvm::Offset.

Referenced by transferNodesFromList().

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>
ValueSymbolTable * llvm::SymbolTableListTraits< ValueSubClass, Args >::toPtr ( ValueSymbolTable & R)
inlinestatic

Definition at line 107 of file SymbolTableListTraits.h.

◆ toPtr() [2/2]

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

Definition at line 106 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 )

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