LLVM  8.0.1
Public Member Functions | Static Public Member Functions | List of all members
llvm::OptimizationRemarkMissed Class Reference

Diagnostic information for missed-optimization remarks. More...

#include "llvm/IR/DiagnosticInfo.h"

Inheritance diagram for llvm::OptimizationRemarkMissed:
Inheritance graph
[legend]
Collaboration diagram for llvm::OptimizationRemarkMissed:
Collaboration graph
[legend]

Public Member Functions

 OptimizationRemarkMissed (const char *PassName, StringRef RemarkName, const DiagnosticLocation &Loc, const Value *CodeRegion)
 PassName is the name of the pass emitting this diagnostic. More...
 
 OptimizationRemarkMissed (const char *PassName, StringRef RemarkName, const Instruction *Inst)
 Same as above but Inst is used to derive code region and debug location. More...
 
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 Value *CodeRegion=nullptr)
 PassName is the name of the pass emitting this diagnostic. More...
 
 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. More...
 
 DiagnosticInfoIROptimization (enum DiagnosticKind Kind, enum DiagnosticSeverity Severity, const char *PassName, const Function &Fn, const DiagnosticLocation &Loc, const Twine &Msg)
 Legacy interface. More...
 
const ValuegetCodeRegion () 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. More...
 
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
 
std::string getMsg () const
 
Optional< uint64_t > getHotness () const
 
void setHotness (Optional< uint64_t > H)
 
bool isVerbose () 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. More...
 
bool isLocationAvailable () const
 Return true if location information is available for this diagnostic. More...
 
const std::string getLocationStr () const
 Return a string with the location information for this diagnostic in the format "file:line:col". More...
 
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. More...
 
std::string getAbsolutePath () const
 Return the absolute path tot the file. More...
 
const FunctiongetFunction () 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 charPassName
 Name of the pass that triggers this report. More...
 
StringRef RemarkName
 Textual identifier for the remark (single-word, camel-case). More...
 
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. More...
 
SmallVector< Argument, 4 > Args
 Arguments collected via the streaming interface. More...
 
bool IsVerbose = false
 The remark is expected to be noisy. More...
 
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. More...
 

Detailed Description

Diagnostic information for missed-optimization remarks.

Definition at line 715 of file DiagnosticInfo.h.

Constructor & Destructor Documentation

◆ OptimizationRemarkMissed() [1/2]

OptimizationRemarkMissed::OptimizationRemarkMissed ( const char PassName,
StringRef  RemarkName,
const DiagnosticLocation Loc,
const Value 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, camel-case). Loc is the debug location and CodeRegion is the region that the optimization operates on (currently only block is supported).

Definition at line 267 of file DiagnosticInfo.cpp.

◆ OptimizationRemarkMissed() [2/2]

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 274 of file DiagnosticInfo.cpp.

Member Function Documentation

◆ classof()

static bool llvm::OptimizationRemarkMissed::classof ( const DiagnosticInfo DI)
inlinestatic

◆ isEnabled()

bool OptimizationRemarkMissed::isEnabled ( ) const
overridevirtual

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