| 
    LLVM 22.0.0git
    
   | 
 
Records a position in IR for a source label (DILabel). More...
#include "llvm/IR/DebugProgramInstruction.h"
Static Public Member Functions | |
| static LLVM_ABI DbgLabelRecord * | createUnresolvedDbgLabelRecord (MDNode *Label, MDNode *DL) | 
| For use during parsing; creates a DbgLabelRecord from as-of-yet unresolved MDNodes.   | |
| static bool | classof (const DbgRecord *E) | 
| Support type inquiry through isa, cast, and dyn_cast.   | |
Additional Inherited Members | |
| Public Types inherited from llvm::DbgRecord | |
| enum | Kind : uint8_t { ValueKind , LabelKind } | 
| Subclass discriminator.  More... | |
| using | self_iterator = simple_ilist<DbgRecord>::iterator | 
| using | const_self_iterator = simple_ilist<DbgRecord>::const_iterator | 
| Public Attributes inherited from llvm::DbgRecord | |
| DbgMarker * | Marker = nullptr | 
| Marker that this DbgRecord is linked into.   | |
| Protected Types inherited from llvm::ilist_node_impl< ilist_detail::compute_node_options< DbgRecord, Options... >::type > | |
| using | self_iterator | 
| using | const_self_iterator | 
| using | reverse_self_iterator | 
| using | const_reverse_self_iterator | 
| Protected Member Functions inherited from llvm::DbgRecord | |
| ~DbgRecord ()=default | |
| Similarly to Value, we avoid paying the cost of a vtable by protecting the dtor and having deleteRecord dispatch cleanup.   | |
| Protected Member Functions inherited from llvm::ilist_node_impl< ilist_detail::compute_node_options< DbgRecord, Options... >::type > | |
| ilist_node_impl ()=default | |
| Protected Attributes inherited from llvm::DbgRecord | |
| DebugLoc | DbgLoc | 
| Kind | RecordKind | 
| Subclass discriminator.   | |
Records a position in IR for a source label (DILabel).
Corresponds to the llvm.dbg.label intrinsic.
Definition at line 237 of file DebugProgramInstruction.h.
Definition at line 152 of file DebugProgramInstruction.cpp.
References assert(), llvm::DbgRecord::DbgRecord(), DL, and llvm::DbgRecord::LabelKind.
Support type inquiry through isa, cast, and dyn_cast.
Definition at line 267 of file DebugProgramInstruction.h.
References llvm::DbgRecord::DbgRecord(), E(), and llvm::DbgRecord::LabelKind.
| DbgLabelRecord * llvm::DbgLabelRecord::clone | ( | ) | const | 
Definition at line 399 of file DebugProgramInstruction.cpp.
References llvm::DbgRecord::getDebugLoc(), and getLabel().
| DbgLabelInst * llvm::DbgLabelRecord::createDebugIntrinsic | ( | Module * | M, | 
| Instruction * | InsertBefore ) const | 
Definition at line 461 of file DebugProgramInstruction.cpp.
References llvm::cast(), llvm::CallInst::Create(), llvm::MetadataAsValue::get(), llvm::DbgRecord::getContext(), llvm::DbgRecord::getDebugLoc(), llvm::ilist_node_impl< OptionsT >::getIterator(), getLabel(), and llvm::Intrinsic::getOrInsertDeclaration().
      
  | 
  static | 
For use during parsing; creates a DbgLabelRecord from as-of-yet unresolved MDNodes.
Trying to access the resulting DbgLabelRecord's fields before they are resolved, or if they resolve to the wrong type, will result in a crash.
Definition at line 157 of file DebugProgramInstruction.cpp.
References DL.
Referenced by upgradeDbgIntrinsicToDbgRecord().
      
  | 
  inline | 
Definition at line 263 of file DebugProgramInstruction.h.
References llvm::MDNode::get().
Referenced by clone(), and createDebugIntrinsic().
      
  | 
  inline | 
Definition at line 264 of file DebugProgramInstruction.h.
| void DbgLabelRecord::print | ( | raw_ostream & | O, | 
| bool | IsForDebug = false ) const | 
Definition at line 5142 of file AsmWriter.cpp.
References getModuleFromDPI(), and print().
| void DbgLabelRecord::print | ( | raw_ostream & | ROS, | 
| ModuleSlotTracker & | MST, | ||
| bool | IsForDebug ) const | 
Definition at line 5163 of file AsmWriter.cpp.
References F, llvm::ModuleSlotTracker::getMachine(), getModuleFromDPI(), llvm::ModuleSlotTracker::incorporateFunction(), and llvm::DbgRecord::Marker.
      
  | 
  inline | 
Definition at line 262 of file DebugProgramInstruction.h.