class TBAAVerifier
Declaration
class TBAAVerifier { /* full declaration omitted */ };
Description
Verify that the TBAA Metadatas are valid.
Declared at: llvm/include/llvm/IR/Verifier.h:39
Member Variables
- private llvm::VerifierSupport* Diagnostic = nullptr
- private DenseMap<const llvm::MDNode*, llvm::TBAAVerifier::TBAABaseNodeSummary> TBAABaseNodes
- private DenseMap<const llvm::MDNode*, bool> TBAAScalarNodes
- Maps an alleged scalar TBAA node to a boolean that is true if the said TBAA node is a valid scalar TBAA node or false otherwise.
Method Overview
- private template <typename... Tys>void CheckFailed(Tys &&... Args)
- public TBAAVerifier(llvm::VerifierSupport * Diagnostic = nullptr)
- private llvm::MDNode * getFieldNodeFromTBAABaseNode(llvm::Instruction & I, const llvm::MDNode * BaseNode, llvm::APInt & Offset, bool IsNewFormat)
- private bool isValidScalarTBAANode(const llvm::MDNode * MD)
- private TBAAVerifier::TBAABaseNodeSummary verifyTBAABaseNode(llvm::Instruction & I, const llvm::MDNode * BaseNode, bool IsNewFormat)
- private llvm::TBAAVerifier::TBAABaseNodeSummary verifyTBAABaseNodeImpl(llvm::Instruction & I, const llvm::MDNode * BaseNode, bool IsNewFormat)
- public bool visitTBAAMetadata(llvm::Instruction & I, const llvm::MDNode * MD)
Methods
¶template <typename... Tys>
void CheckFailed(Tys&&... Args)
template <typename... Tys>
void CheckFailed(Tys&&... Args)
Description
Helper to diagnose a failure
Declared at: llvm/include/llvm/IR/Verifier.h:43
Templates
- Tys
Parameters
- Tys&&... Args
¶TBAAVerifier(
llvm::VerifierSupport* Diagnostic = nullptr)
TBAAVerifier(
llvm::VerifierSupport* Diagnostic = nullptr)
Description
@ }
Declared at: llvm/include/llvm/IR/Verifier.h:75
Parameters
- llvm::VerifierSupport* Diagnostic = nullptr
¶llvm::MDNode* getFieldNodeFromTBAABaseNode(
llvm::Instruction& I,
const llvm::MDNode* BaseNode,
llvm::APInt& Offset,
bool IsNewFormat)
llvm::MDNode* getFieldNodeFromTBAABaseNode(
llvm::Instruction& I,
const llvm::MDNode* BaseNode,
llvm::APInt& Offset,
bool IsNewFormat)
Description
@ {
Declared at: llvm/include/llvm/IR/Verifier.h:62
Parameters
- llvm::Instruction& I
- const llvm::MDNode* BaseNode
- llvm::APInt& Offset
- bool IsNewFormat
¶bool isValidScalarTBAANode(const llvm::MDNode* MD)
bool isValidScalarTBAANode(const llvm::MDNode* MD)
Declared at: llvm/include/llvm/IR/Verifier.h:71
Parameters
- const llvm::MDNode* MD
¶TBAAVerifier::TBAABaseNodeSummary
verifyTBAABaseNode(llvm::Instruction& I,
const llvm::MDNode* BaseNode,
bool IsNewFormat)
TBAAVerifier::TBAABaseNodeSummary
verifyTBAABaseNode(llvm::Instruction& I,
const llvm::MDNode* BaseNode,
bool IsNewFormat)
Declared at: llvm/include/llvm/IR/Verifier.h:64
Parameters
- llvm::Instruction& I
- const llvm::MDNode* BaseNode
- bool IsNewFormat
¶llvm::TBAAVerifier::TBAABaseNodeSummary
verifyTBAABaseNodeImpl(
llvm::Instruction& I,
const llvm::MDNode* BaseNode,
bool IsNewFormat)
llvm::TBAAVerifier::TBAABaseNodeSummary
verifyTBAABaseNodeImpl(
llvm::Instruction& I,
const llvm::MDNode* BaseNode,
bool IsNewFormat)
Declared at: llvm/include/llvm/IR/Verifier.h:67
Parameters
- llvm::Instruction& I
- const llvm::MDNode* BaseNode
- bool IsNewFormat
¶bool visitTBAAMetadata(llvm::Instruction& I,
const llvm::MDNode* MD)
bool visitTBAAMetadata(llvm::Instruction& I,
const llvm::MDNode* MD)
Description
Visit an instruction and return true if it is valid, return false if an invalid TBAA is attached.
Declared at: llvm/include/llvm/IR/Verifier.h:79
Parameters
- llvm::Instruction& I
- const llvm::MDNode* MD