LLVM 19.0.0git
Public Types | Public Member Functions | List of all members
llvm::DebugifyCustomPassManager Class Reference

DebugifyCustomPassManager wraps each pass with the debugify passes if needed. More...

#include "llvm/Transforms/Utils/Debugify.h"

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

Public Types

using super = legacy::PassManager
 

Public Member Functions

void add (Pass *P) override
 Add a pass to the queue of passes to run.
 
void setDIStatsMap (DebugifyStatsMap &StatMap)
 
void setDebugInfoBeforePass (DebugInfoPerPass &PerPassDI)
 
void setOrigDIVerifyBugsReportFilePath (StringRef BugsReportFilePath)
 
StringRef getOrigDIVerifyBugsReportFilePath () const
 
void setDebugifyMode (enum DebugifyMode M)
 
bool isSyntheticDebugInfo () const
 
bool isOriginalDebugInfoMode () const
 
const DebugifyStatsMapgetDebugifyStatsMap () const
 
DebugInfoPerPassgetDebugInfoPerPass ()
 
- Public Member Functions inherited from llvm::legacy::PassManager
 PassManager ()
 Create new pass manager.
 
 ~PassManager () override
 
void add (Pass *P) override
 Add a pass to the queue of passes to run.
 
bool run (Module &M)
 run - Execute all of the passes scheduled for execution.
 
- Public Member Functions inherited from llvm::legacy::PassManagerBase
virtual ~PassManagerBase ()
 
virtual void add (Pass *P)=0
 Add a pass to the queue of passes to run.
 

Detailed Description

DebugifyCustomPassManager wraps each pass with the debugify passes if needed.

NOTE: We support legacy custom pass manager only. TODO: Add New PM support for custom pass manager.

Definition at line 227 of file Debugify.h.

Member Typedef Documentation

◆ super

Definition at line 234 of file Debugify.h.

Member Function Documentation

◆ add()

void llvm::DebugifyCustomPassManager::add ( Pass P)
inlineoverridevirtual

Add a pass to the queue of passes to run.

This passes ownership of the Pass to the PassManager. When the PassManager is destroyed, the pass will be destroyed as well, so there is no need to delete the pass. This may even destroy the pass right away if it is found to be redundant. This implies that all passes MUST be allocated with 'new'.

Reimplemented from llvm::legacy::PassManager.

Definition at line 236 of file Debugify.h.

References llvm::legacy::PassManager::add(), createCheckDebugifyFunctionPass(), createCheckDebugifyModulePass(), createDebugifyFunctionPass(), createDebugifyModulePass(), llvm::isBitcodeWriterPass(), llvm::isIRPrintingPass(), isSyntheticDebugInfo(), Name, P, llvm::PT_Function, and llvm::PT_Module.

◆ getDebugifyStatsMap()

const DebugifyStatsMap & llvm::DebugifyCustomPassManager::getDebugifyStatsMap ( ) const
inline

Definition at line 297 of file Debugify.h.

◆ getDebugInfoPerPass()

DebugInfoPerPass & llvm::DebugifyCustomPassManager::getDebugInfoPerPass ( )
inline

Definition at line 298 of file Debugify.h.

◆ getOrigDIVerifyBugsReportFilePath()

StringRef llvm::DebugifyCustomPassManager::getOrigDIVerifyBugsReportFilePath ( ) const
inline

Definition at line 284 of file Debugify.h.

◆ isOriginalDebugInfoMode()

bool llvm::DebugifyCustomPassManager::isOriginalDebugInfoMode ( ) const
inline

Definition at line 293 of file Debugify.h.

◆ isSyntheticDebugInfo()

bool llvm::DebugifyCustomPassManager::isSyntheticDebugInfo ( ) const
inline

Definition at line 290 of file Debugify.h.

Referenced by add().

◆ setDebugifyMode()

void llvm::DebugifyCustomPassManager::setDebugifyMode ( enum DebugifyMode  M)
inline

Definition at line 288 of file Debugify.h.

◆ setDebugInfoBeforePass()

void llvm::DebugifyCustomPassManager::setDebugInfoBeforePass ( DebugInfoPerPass PerPassDI)
inline

Definition at line 278 of file Debugify.h.

◆ setDIStatsMap()

void llvm::DebugifyCustomPassManager::setDIStatsMap ( DebugifyStatsMap StatMap)
inline

Definition at line 276 of file Debugify.h.

◆ setOrigDIVerifyBugsReportFilePath()

void llvm::DebugifyCustomPassManager::setOrigDIVerifyBugsReportFilePath ( StringRef  BugsReportFilePath)
inline

Definition at line 281 of file Debugify.h.


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