LLVM API Documentation
#include <LLVMContextImpl.h>
Public Member Functions | |
DebugRecVH (MDNode *n, LLVMContextImpl *ctx, int idx) | |
MDNode * | get () const |
virtual void | deleted () |
virtual void | allUsesReplacedWith (Value *VNew) |
![]() | |
CallbackVH () | |
CallbackVH (Value *P) | |
operator Value * () const | |
![]() | |
ValueHandleBase (HandleBaseKind Kind) | |
ValueHandleBase (HandleBaseKind Kind, Value *V) | |
ValueHandleBase (HandleBaseKind Kind, const ValueHandleBase &RHS) | |
~ValueHandleBase () | |
Value * | operator= (Value *RHS) |
Value * | operator= (const ValueHandleBase &RHS) |
Value * | operator-> () const |
Value & | operator* () const |
Additional Inherited Members | |
![]() | |
static void | ValueIsDeleted (Value *V) |
static void | ValueIsRAUWd (Value *Old, Value *New) |
![]() | |
enum | HandleBaseKind { Assert, Callback, Tracking, Weak } |
![]() | |
CallbackVH (const CallbackVH &RHS) | |
virtual | ~CallbackVH () |
void | setValPtr (Value *P) |
![]() | |
Value * | getValPtr () const |
void | setValPtrInt (unsigned K) |
unsigned | getValPtrInt () const |
![]() | |
static bool | isValid (Value *V) |
DebugRecVH - This is a CallbackVH used to keep the Scope -> index maps up to date as MDNodes mutate. This class is implemented in DebugLoc.cpp.
Definition at line 212 of file LLVMContextImpl.h.
|
inline |
Definition at line 222 of file LLVMContextImpl.h.
|
virtual |
Called when this->getValPtr()->replaceAllUsesWith(new_value) is called, before any of the uses have actually been replaced. If WeakVH were implemented as a CallbackVH, it would use this method to call setValPtr(new_value). AssertingVH would do nothing in this method.
Reimplemented from llvm::CallbackVH.
Definition at line 256 of file DebugLoc.cpp.
References deleted(), llvm::dyn_cast(), llvm::MDNode::get(), llvm::LLVMContextImpl::getOrAddScopeInlinedAtIdxEntry(), llvm::LLVMContextImpl::getOrAddScopeRecordIdxEntry(), llvm::LLVMContextImpl::ScopeInlinedAtIdx, llvm::LLVMContextImpl::ScopeInlinedAtRecords, llvm::LLVMContextImpl::ScopeRecordIdx, and llvm::CallbackVH::setValPtr().
|
virtual |
deleted - The MDNode this is pointing to got deleted, so this pointer needs to drop to null and we need remove our entry from the DenseMap.
Reimplemented from llvm::CallbackVH.
Definition at line 213 of file DebugLoc.cpp.
References llvm::MDNode::get(), llvm::LLVMContextImpl::ScopeInlinedAtIdx, llvm::LLVMContextImpl::ScopeInlinedAtRecords, llvm::LLVMContextImpl::ScopeRecordIdx, and llvm::CallbackVH::setValPtr().
Referenced by allUsesReplacedWith().
|
inline |
Definition at line 225 of file LLVMContextImpl.h.
References llvm::ValueHandleBase::getValPtr().