21 #ifndef LLVM_IR_VERIFIER_H 22 #define LLVM_IR_VERIFIER_H 37 struct VerifierSupport;
44 template <
typename... Tys>
void CheckFailed(Tys &&...
Args);
54 using TBAABaseNodeSummary = std::pair<bool, unsigned>;
65 TBAAVerifier::TBAABaseNodeSummary verifyTBAABaseNode(
Instruction &I,
68 TBAABaseNodeSummary verifyTBAABaseNodeImpl(
Instruction &I,
72 bool isValidScalarTBAANode(
const MDNode *MD);
77 : Diagnostic(Diagnostic) {}
102 bool *BrokenDebugInfo =
nullptr);
141 explicit VerifierPass(
bool FatalErrors =
true) : FatalErrors(FatalErrors) {}
149 #endif // LLVM_IR_VERIFIER_H This class represents lattice values for constants.
A Module instance is used to store all the information related to an LLVM module. ...
FunctionPass * createVerifierPass(bool FatalErrors=true)
Check a module for errors, and report separate error states for IR and debug info errors...
VerifierPass(bool FatalErrors=true)
A CRTP mix-in to automatically provide informational APIs needed for passes.
TBAAVerifier(VerifierSupport *Diagnostic=nullptr)
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.
bool visitTBAAMetadata(Instruction &I, const MDNode *MD)
Visit an instruction and return true if it is valid, return false if an invalid TBAA is attached...
FunctionPass class - This class is used to implement most global optimizations.
Class for arbitrary precision integers.
bool verifyModule(const Module &M, raw_ostream *OS=nullptr, bool *BrokenDebugInfo=nullptr)
Check a module for errors.
bool verifyFunction(const Function &F, raw_ostream *OS=nullptr)
Check a function for errors, useful for use when debugging a pass.
Verify that the TBAA Metadatas are valid.
This class implements an extremely fast bulk output stream that can only output to a stream...
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...
constexpr char Args[]
Key for Kernel::Metadata::mArgs.