|
LLVM
3.7.0
|
Common features for diagnostics dealing with optimization remarks. More...
#include <DiagnosticInfo.h>
Public Member Functions | |
| DiagnosticInfoOptimizationBase (enum DiagnosticKind Kind, enum DiagnosticSeverity Severity, const char *PassName, const Function &Fn, const DebugLoc &DLoc, const Twine &Msg) | |
PassName is the name of the pass emitting this diagnostic. More... | |
| void | print (DiagnosticPrinter &DP) const override |
| virtual bool | isEnabled () const =0 |
| Return true if this optimization remark is enabled by one of of the LLVM command line flags (-pass-remarks, -pass-remarks-missed, or -pass-remarks-analysis). 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 *Filename, unsigned *Line, unsigned *Column) const |
| Return location information for this diagnostic in three parts: the source file name, line number and column. More... | |
| const char * | getPassName () const |
| const Function & | getFunction () const |
| const DebugLoc & | getDebugLoc () const |
| const Twine & | getMsg () const |
Public Member Functions inherited from llvm::DiagnosticInfo | |
| DiagnosticInfo (int Kind, DiagnosticSeverity Severity) | |
| virtual | ~DiagnosticInfo () |
| int | getKind () const |
| DiagnosticSeverity | getSeverity () const |
Static Public Member Functions | |
| static bool | classof (const DiagnosticInfo *DI) |
Common features for diagnostics dealing with optimization remarks.
Definition at line 251 of file DiagnosticInfo.h.
|
inline |
PassName is the name of the pass emitting this diagnostic.
Fn is the function where the diagnostic is being emitted. DLoc is the location information to use in the diagnostic. If line table information is available, the diagnostic will include the source code location. Msg is the message to show. Note that this class does not copy this message, so this reference must be valid for the whole life time of the diagnostic.
Definition at line 260 of file DiagnosticInfo.h.
|
inlinestatic |
Definition at line 270 of file DiagnosticInfo.h.
References llvm::DK_OptimizationRemark, and llvm::DiagnosticInfo::getKind().
Definition at line 295 of file DiagnosticInfo.h.
Referenced by getLocation(), and isLocationAvailable().
Definition at line 294 of file DiagnosticInfo.h.
| void DiagnosticInfoOptimizationBase::getLocation | ( | StringRef * | Filename, |
| unsigned * | Line, | ||
| unsigned * | Column | ||
| ) | const |
Return location information for this diagnostic in three parts: the source file name, line number and column.
Definition at line 135 of file DiagnosticInfo.cpp.
References getDebugLoc().
Referenced by getLocationStr().
| const std::string DiagnosticInfoOptimizationBase::getLocationStr | ( | ) | const |
Return a string with the location information for this diagnostic in the format "file:line:col".
If location information is not available, it returns "<unknown>:0:0".
Definition at line 145 of file DiagnosticInfo.cpp.
References getLocation(), and isLocationAvailable().
Referenced by print().
Definition at line 296 of file DiagnosticInfo.h.
Referenced by print().
|
inline |
Definition at line 293 of file DiagnosticInfo.h.
Referenced by llvm::DiagnosticInfoOptimizationRemark::isEnabled(), llvm::DiagnosticInfoOptimizationRemarkMissed::isEnabled(), and llvm::DiagnosticInfoOptimizationRemarkAnalysis::isEnabled().
|
pure virtual |
Return true if this optimization remark is enabled by one of of the LLVM command line flags (-pass-remarks, -pass-remarks-missed, or -pass-remarks-analysis).
Note that this only handles the LLVM flags. We cannot access Clang flags from here (they are handled in BackendConsumer::OptimizationRemarkHandler).
Implemented in llvm::DiagnosticInfoOptimizationFailure, llvm::DiagnosticInfoOptimizationRemarkAnalysis, llvm::DiagnosticInfoOptimizationRemarkMissed, and llvm::DiagnosticInfoOptimizationRemark.
| bool DiagnosticInfoOptimizationBase::isLocationAvailable | ( | ) | const |
Return true if location information is available for this diagnostic.
Definition at line 131 of file DiagnosticInfo.cpp.
References getDebugLoc().
Referenced by getLocationStr().
|
overridevirtual |
Implements llvm::DiagnosticInfo.
Definition at line 154 of file DiagnosticInfo.cpp.
References getLocationStr(), and getMsg().
1.8.6