LLVM  6.0.0svn
Public Member Functions | Static Public Member Functions | List of all members
llvm::OptimizationRemarkAnalysisAliasing Class Reference

Diagnostic information for optimization analysis remarks related to pointer aliasing. More...

#include "llvm/IR/DiagnosticInfo.h"

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

Public Member Functions

 OptimizationRemarkAnalysisAliasing (const char *PassName, StringRef RemarkName, const DiagnosticLocation &Loc, const Value *CodeRegion)
 PassName is the name of the pass emitting this diagnostic. More...
 
- Public Member Functions inherited from llvm::OptimizationRemarkAnalysis
 OptimizationRemarkAnalysis (const char *PassName, StringRef RemarkName, const DiagnosticLocation &Loc, const Value *CodeRegion)
 PassName is the name of the pass emitting this diagnostic. More...
 
 OptimizationRemarkAnalysis (const char *PassName, StringRef Prepend, const OptimizationRemarkAnalysis &Orig)
 This is ctor variant allows a pass to build an optimization remark from an existing remark. More...
 
 OptimizationRemarkAnalysis (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
 
bool shouldAlwaysPrint () const
 
- 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 *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 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::OptimizationRemarkAnalysis
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

- Static Public Attributes inherited from llvm::OptimizationRemarkAnalysis
static const charAlwaysPrint = ""
 
- Protected Member Functions inherited from llvm::OptimizationRemarkAnalysis
 OptimizationRemarkAnalysis (enum DiagnosticKind Kind, const char *PassName, const Function &Fn, const DiagnosticLocation &Loc, const Twine &Msg)
 
 OptimizationRemarkAnalysis (enum DiagnosticKind Kind, const char *PassName, StringRef RemarkName, const DiagnosticLocation &Loc, const Value *CodeRegion)
 
- 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 optimization analysis remarks related to pointer aliasing.

Definition at line 852 of file DiagnosticInfo.h.

Constructor & Destructor Documentation

◆ OptimizationRemarkAnalysisAliasing()

llvm::OptimizationRemarkAnalysisAliasing::OptimizationRemarkAnalysisAliasing ( const char PassName,
StringRef  RemarkName,
const DiagnosticLocation Loc,
const Value CodeRegion 
)
inline

PassName is the name of the pass emitting this diagnostic.

If this name matches the regular expression given in -Rpass-analysis=, 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). The front-end will append its own message related to options that address pointer aliasing legality.

Definition at line 861 of file DiagnosticInfo.h.

Member Function Documentation

◆ classof()

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

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