LLVM 18.0.0git
Public Member Functions | List of all members
llvm::AssignmentTrackingPass Class Reference

Convert @llvm.dbg.declare intrinsics into sets of @llvm.dbg.assign intrinsics by treating stores to the dbg.declare'd address as assignments to the variable. More...

#include "llvm/IR/DebugInfo.h"

Inheritance diagram for llvm::AssignmentTrackingPass:
Inheritance graph
[legend]

Public Member Functions

PreservedAnalyses run (Function &F, FunctionAnalysisManager &AM)
 
PreservedAnalyses run (Module &M, ModuleAnalysisManager &AM)
 
- Public Member Functions inherited from llvm::PassInfoMixin< AssignmentTrackingPass >
void printPipeline (raw_ostream &OS, function_ref< StringRef(StringRef)> MapClassName2PassName)
 

Additional Inherited Members

- Static Public Member Functions inherited from llvm::PassInfoMixin< AssignmentTrackingPass >
static StringRef name ()
 Gets the name of the pass we are mixed into.
 

Detailed Description

Convert @llvm.dbg.declare intrinsics into sets of @llvm.dbg.assign intrinsics by treating stores to the dbg.declare'd address as assignments to the variable.

Not all kinds of variables are supported yet; those will be left with their dbg.declare intrinsics. The pass sets the debug-info-assignment-tracking module flag to true to indicate assignment tracking has been enabled.

Definition at line 336 of file DebugInfo.h.

Member Function Documentation

◆ run() [1/2]

PreservedAnalyses AssignmentTrackingPass::run ( Function F,
FunctionAnalysisManager AM 
)

◆ run() [2/2]

PreservedAnalyses AssignmentTrackingPass::run ( Module M,
ModuleAnalysisManager AM 
)

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