15 #ifndef LLVM_IR_OPTIMIZATIONDIAGNOSTICINFO_H 16 #define LLVM_IR_OPTIMIZATIONDIAGNOSTICINFO_H 57 : F(
Arg.F), BFI(
Arg.BFI) {}
76 void emit(
T RemarkBuilder, decltype(RemarkBuilder()) * =
nullptr) {
83 auto R = RemarkBuilder();
106 std::unique_ptr<BlockFrequencyInfo> OwnedBFI;
117 bool shouldEmitVerbose() {
return BFI !=
nullptr; }
138 std::unique_ptr<OptimizationRemarkEmitter> ORE;
148 assert(ORE &&
"pass not run yet");
168 #endif // LLVM_IR_OPTIMIZATIONDIAGNOSTICINFO_H
This class represents lattice values for constants.
Used to set IsVerbose via the stream interface.
DiagnosticInfoOptimizationBase::setExtraArgs setExtraArgs
DiagnosticInfoOptimizationBase::setIsVerbose setIsVerbose
yaml::Output * getDiagnosticsOutputFile()
Return the YAML file used by the backend to save optimization diagnostics.
BlockFrequencyInfo pass uses BlockFrequencyInfoImpl implementation to estimate IR basic block frequen...
static bool runOnFunction(Function &F, bool PostInlining)
A set of analyses that are preserved following a run of a transformation pass.
A CRTP mix-in that provides informational APIs needed for analysis passes.
Represent the analysis usage information of a pass.
Common features for diagnostics dealing with optimization remarks that are used by IR passes...
FunctionPass class - This class is used to implement most global optimizations.
LLVMContext & getContext() const
getContext - Return a reference to the LLVMContext associated with this function. ...
Used in the streaming interface as the general argument type.
print lazy value Lazy Value Info Printer Pass
Common features for diagnostics dealing with optimization remarks that are used by both IR and MIR pa...
amdgpu Simplify well known AMD library false Value Value * Arg
bool isAnyRemarkEnabled(StringRef PassName) const
Return true if any type of remarks are enabled for this pass.
API to communicate dependencies between analyses during invalidation.
const DiagnosticHandler * getDiagHandlerPtr() const
getDiagHandlerPtr - Returns const raw pointer of DiagnosticHandler set by setDiagnosticHandler.
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
LLVM Value Representation.
StringRef - Represent a constant reference to a string, i.e.
A container for analyses that lazily runs them and caches their results.
This header defines various interfaces for pass management in LLVM.
A special type used by analysis passes to provide an address that identifies that particular analysis...