LLVM: llvm::MetadataTracking Class Reference (original) (raw)
API for tracking metadata references through RAUW and deletion. More...
#include "[llvm/IR/Metadata.h](Metadata%5F8h%5Fsource.html)"
| Static Public Member Functions | |
|---|---|
| static bool | track (Metadata *&MD) |
| Track the reference to metadata. | |
| static bool | track (void *Ref, Metadata &MD, Metadata &Owner) |
| Track the reference to metadata for Metadata. | |
| static bool | track (void *Ref, Metadata &MD, MetadataAsValue &Owner) |
| Track the reference to metadata for MetadataAsValue. | |
| static bool | track (void *Ref, Metadata &MD, DebugValueUser &Owner) |
| Track the reference to metadata for DebugValueUser. | |
| static void | untrack (Metadata *&MD) |
| Stop tracking a reference to metadata. | |
| static LLVM_ABI void | untrack (void *Ref, Metadata &MD) |
| static bool | retrack (Metadata *&MD, Metadata *&New) |
| Move tracking from one reference to another. | |
| static LLVM_ABI bool | retrack (void *Ref, Metadata &MD, void *New) |
| static LLVM_ABI bool | isReplaceable (const Metadata &MD) |
| Check whether metadata is replaceable. |
API for tracking metadata references through RAUW and deletion.
Shared API for updating Metadata pointers in subclasses that support RAUW.
This API is not meant to be used directly. See TrackingMDRef for a user-friendly tracking reference.
Definition at line 312 of file Metadata.h.
◆ OwnerTy
◆ isReplaceable()
◆ retrack() [1/2]
◆ retrack() [2/2]
| bool MetadataTracking::retrack ( void * Ref, Metadata & MD, void * New ) | static |
|---|
◆ track() [1/4]
| bool llvm::MetadataTracking::track ( Metadata *& MD) | inlinestatic |
|---|
◆ track() [2/4]
Track the reference to metadata for DebugValueUser.
As track(Metadata*&), but with support for calling back to Owner to tell it that its operand changed. This could trigger Owner being re-uniqued.
Definition at line 350 of file Metadata.h.
References Owner, llvm::Ref, and track().
◆ track() [3/4]
Track the reference to metadata for Metadata.
As track(Metadata*&), but with support for calling back to Owner to tell it that its operand changed. This could trigger Owner being re-uniqued.
Definition at line 332 of file Metadata.h.
References Owner, llvm::Ref, and track().
◆ track() [4/4]
Track the reference to metadata for MetadataAsValue.
As track(Metadata*&), but with support for calling back to Owner to tell it that its operand changed. This could trigger Owner being re-uniqued.
Definition at line 341 of file Metadata.h.
References Owner, llvm::Ref, and track().
◆ untrack() [1/2]
| void llvm::MetadataTracking::untrack ( Metadata *& MD) | inlinestatic |
|---|
◆ untrack() [2/2]
| void MetadataTracking::untrack ( void * Ref, Metadata & MD ) | static |
|---|
The documentation for this class was generated from the following files:
- include/llvm/IR/Metadata.h
- lib/IR/Metadata.cpp