|
LLVM 22.0.0git
|
Diagnostic information for missed-optimization remarks. More...
#include "llvm/IR/DiagnosticInfo.h"
Public Member Functions | |
| OptimizationRemarkMissed (const char *PassName, StringRef RemarkName, const DiagnosticLocation &Loc, const BasicBlock *CodeRegion) | |
PassName is the name of the pass emitting this diagnostic. | |
| OptimizationRemarkMissed (const char *PassName, StringRef RemarkName, const Instruction *Inst) | |
Same as above but Inst is used to derive code region and debug location. | |
| OptimizationRemarkMissed (const char *PassName, StringRef RemarkName, const Function *F) | |
Same as above but F is used to derive code region and debug location. | |
| bool | isEnabled () const override |
| Public Member Functions inherited from llvm::DiagnosticInfoIROptimization | |
| DiagnosticInfoIROptimization (enum DiagnosticKind Kind, enum DiagnosticSeverity Severity, const char *PassName, StringRef RemarkName, const Function &Fn, const DiagnosticLocation &Loc, const BasicBlock *CodeRegion=nullptr) | |
PassName is the name of the pass emitting this diagnostic. | |
| DiagnosticInfoIROptimization (const char *PassName, StringRef Prepend, const DiagnosticInfoIROptimization &Orig) | |
| This is ctor variant allows a pass to build an optimization remark from an existing remark. | |
| DiagnosticInfoIROptimization (enum DiagnosticKind Kind, enum DiagnosticSeverity Severity, const char *PassName, const Function &Fn, const DiagnosticLocation &Loc, const Twine &Msg) | |
| Legacy interface. | |
| const BasicBlock * | getCodeRegion () const |
| Public Member Functions inherited from llvm::DiagnosticInfoOptimizationBase | |
| DiagnosticInfoOptimizationBase (enum DiagnosticKind Kind, enum DiagnosticSeverity Severity, const char *PassName, StringRef RemarkName, const Function &Fn, const DiagnosticLocation &Loc) | |
PassName is the name of the pass emitting this diagnostic. | |
| void | insert (StringRef S) |
| void | insert (Argument A) |
| void | insert (setIsVerbose V) |
| void | insert (setExtraArgs EA) |
| void | print (DiagnosticPrinter &DP) const override |
| StringRef | getPassName () const |
| StringRef | getRemarkName () const |
| std::string | getMsg () const |
| std::optional< uint64_t > | getHotness () const |
| void | setHotness (std::optional< uint64_t > H) |
| bool | isVerbose () const |
| ArrayRef< Argument > | getArgs () const |
| bool | isPassed () const |
| bool | isMissed () const |
| bool | isAnalysis () const |
| Public Member Functions inherited from llvm::DiagnosticInfoWithLocationBase | |
| DiagnosticInfoWithLocationBase (enum DiagnosticKind Kind, enum DiagnosticSeverity Severity, const Function &Fn, const DiagnosticLocation &Loc) | |
Fn is the function where the diagnostic is being emitted. | |
| bool | isLocationAvailable () const |
| Return true if location information is available for this diagnostic. | |
| std::string | getLocationStr () const |
| Return a string with the location information for this diagnostic in the format "file:line:col". | |
| void | getLocation (StringRef &RelativePath, unsigned &Line, unsigned &Column) const |
| Return location information for this diagnostic in three parts: the relative source file path, line number and column. | |
| std::string | getAbsolutePath () const |
| Return the absolute path tot the file. | |
| const Function & | getFunction () const |
| DiagnosticLocation | getLocation () const |
| Public Member Functions inherited from llvm::DiagnosticInfo | |
| DiagnosticInfo (int Kind, DiagnosticSeverity Severity) | |
| virtual | ~DiagnosticInfo ()=default |
| int | getKind () const |
| DiagnosticSeverity | getSeverity () const |
Static Public Member Functions | |
| static bool | classof (const DiagnosticInfo *DI) |
| Static Public Member Functions inherited from llvm::DiagnosticInfoIROptimization | |
| static bool | classof (const DiagnosticInfo *DI) |
| Static Public Member Functions inherited from llvm::DiagnosticInfoOptimizationBase | |
| static bool | classof (const DiagnosticInfo *DI) |
Additional Inherited Members | |
| Protected Attributes inherited from llvm::DiagnosticInfoOptimizationBase | |
| const char * | PassName |
| Name of the pass that triggers this report. | |
| StringRef | RemarkName |
| Textual identifier for the remark (single-word, CamelCase). | |
| std::optional< uint64_t > | Hotness |
| If profile information is available, this is the number of times the corresponding code was executed in a profile instrumentation run. | |
| SmallVector< Argument, 4 > | Args |
| Arguments collected via the streaming interface. | |
| bool | IsVerbose = false |
| The remark is expected to be noisy. | |
| int | FirstExtraArgIndex = -1 |
| If positive, the index of the first argument that only appear in the optimization records and not in the remark printed in the compiler output. | |
Diagnostic information for missed-optimization remarks.
Definition at line 811 of file DiagnosticInfo.h.
| OptimizationRemarkMissed::OptimizationRemarkMissed | ( | const char * | PassName, |
| StringRef | RemarkName, | ||
| const DiagnosticLocation & | Loc, | ||
| const BasicBlock * | CodeRegion ) |
PassName is the name of the pass emitting this diagnostic.
If this name matches the regular expression given in -Rpass-missed=, then the diagnostic will be emitted. RemarkName is a textual identifier for the remark (single-word, CamelCase). Loc is the debug location and CodeRegion is the region that the optimization operates on.
Definition at line 331 of file DiagnosticInfo.cpp.
References llvm::DiagnosticInfoIROptimization::DiagnosticInfoIROptimization(), llvm::DK_OptimizationRemarkMissed, llvm::DS_Remark, getParent(), llvm::DiagnosticInfoOptimizationBase::PassName, and llvm::DiagnosticInfoOptimizationBase::RemarkName.
| OptimizationRemarkMissed::OptimizationRemarkMissed | ( | const char * | PassName, |
| StringRef | RemarkName, | ||
| const Instruction * | Inst ) |
Same as above but Inst is used to derive code region and debug location.
Definition at line 338 of file DiagnosticInfo.cpp.
References llvm::DiagnosticInfoIROptimization::DiagnosticInfoIROptimization(), llvm::DK_OptimizationRemarkMissed, llvm::DS_Remark, getDebugLoc(), getParent(), llvm::DiagnosticInfoOptimizationBase::PassName, and llvm::DiagnosticInfoOptimizationBase::RemarkName.
| OptimizationRemarkMissed::OptimizationRemarkMissed | ( | const char * | PassName, |
| StringRef | RemarkName, | ||
| const Function * | F ) |
Same as above but F is used to derive code region and debug location.
Definition at line 346 of file DiagnosticInfo.cpp.
References llvm::DiagnosticInfoIROptimization::DiagnosticInfoIROptimization(), llvm::DK_OptimizationRemarkMissed, llvm::DS_Remark, getFirstFunctionBlock(), getSubprogram(), llvm::DiagnosticInfoOptimizationBase::PassName, and llvm::DiagnosticInfoOptimizationBase::RemarkName.
|
inlinestatic |
Definition at line 832 of file DiagnosticInfo.h.
References llvm::DK_OptimizationRemarkMissed, and llvm::DiagnosticInfo::getKind().
|
overridevirtual |
Implements llvm::DiagnosticInfoOptimizationBase.
Definition at line 353 of file DiagnosticInfo.cpp.
References llvm::LLVMContext::getDiagHandlerPtr(), llvm::DiagnosticInfoWithLocationBase::getFunction(), llvm::DiagnosticInfoOptimizationBase::getPassName(), and llvm::DiagnosticHandler::isMissedOptRemarkEnabled().