|
LLVM
3.7.0
|
#include "llvm/IR/Verifier.h"#include "llvm/ADT/STLExtras.h"#include "llvm/ADT/SetVector.h"#include "llvm/ADT/SmallPtrSet.h"#include "llvm/ADT/SmallVector.h"#include "llvm/ADT/StringExtras.h"#include "llvm/IR/CFG.h"#include "llvm/IR/CallSite.h"#include "llvm/IR/CallingConv.h"#include "llvm/IR/ConstantRange.h"#include "llvm/IR/Constants.h"#include "llvm/IR/DataLayout.h"#include "llvm/IR/DebugInfo.h"#include "llvm/IR/DerivedTypes.h"#include "llvm/IR/Dominators.h"#include "llvm/IR/InlineAsm.h"#include "llvm/IR/InstIterator.h"#include "llvm/IR/InstVisitor.h"#include "llvm/IR/IntrinsicInst.h"#include "llvm/IR/LLVMContext.h"#include "llvm/IR/Metadata.h"#include "llvm/IR/Module.h"#include "llvm/IR/PassManager.h"#include "llvm/IR/Statepoint.h"#include "llvm/Pass.h"#include "llvm/Support/CommandLine.h"#include "llvm/Support/Debug.h"#include "llvm/Support/ErrorHandling.h"#include "llvm/Support/raw_ostream.h"#include <algorithm>#include <cstdarg>#include "llvm/IR/Metadata.def"Go to the source code of this file.
Macros | |
| #define | HANDLE_SPECIALIZED_MDNODE_LEAF(CLASS) void visit##CLASS(const CLASS &N); |
| #define | Assert(C,...) do { if (!(C)) { CheckFailed(__VA_ARGS__); return; } } while (0) |
| #define | HANDLE_SPECIALIZED_MDNODE_LEAF(CLASS) |
Functions | |
| template<class Ty > | |
| bool | isValidMetadataArrayImpl (const MDTuple &N, bool AllowNull) |
| template<class Ty > | |
| bool | isValidMetadataArray (const MDTuple &N) |
| template<class Ty > | |
| bool | isValidMetadataNullArray (const MDTuple &N) |
| static bool | hasConflictingReferenceFlags (unsigned Flags) |
| static bool | isTypeCongruent (Type *L, Type *R) |
| Two types are "congruent" if they are identical, or if they are both pointer types with different pointee types and the same address space. More... | |
| static AttrBuilder | getParameterABIAttributes (int I, AttributeSet Attrs) |
| static bool | isContiguous (const ConstantRange &A, const ConstantRange &B) |
| static DISubprogram * | getSubprogram (Metadata *LocalScope) |
| Carefully grab the subprogram from a local scope. More... | |
| template<class MapTy > | |
| static uint64_t | getVariableSize (const DILocalVariable &V, const MapTy &Map) |
Variables | |
| static cl::opt< bool > | VerifyDebugInfo ("verify-debug-info", cl::init(true)) |
| #define Assert | ( | C, | |
| ... | |||
| ) | do { if (!(C)) { CheckFailed(__VA_ARGS__); return; } } while (0) |
Definition at line 416 of file Verifier.cpp.
Definition at line 302 of file Verifier.cpp.
| #define HANDLE_SPECIALIZED_MDNODE_LEAF | ( | CLASS | ) |
Definition at line 302 of file Verifier.cpp.
|
static |
Definition at line 2324 of file Verifier.cpp.
References llvm::AttrBuilder::addAlignmentAttr(), llvm::AttrBuilder::addAttribute(), llvm::Attribute::Alignment, llvm::Attribute::ByVal, llvm::AttributeSet::getParamAlignment(), llvm::AttributeSet::hasAttribute(), llvm::Attribute::InAlloca, llvm::Attribute::InReg, llvm::Attribute::Returned, and llvm::Attribute::StructRet.
|
static |
Carefully grab the subprogram from a local scope.
This carefully grabs the subprogram from a local scope, avoiding the built-in assertions that would typically fire.
Definition at line 3458 of file Verifier.cpp.
|
static |
Definition at line 3512 of file Verifier.cpp.
References llvm::DIVariable::getRawType().
Definition at line 833 of file Verifier.cpp.
|
static |
Definition at line 2571 of file Verifier.cpp.
References llvm::ConstantRange::getLower(), and llvm::ConstantRange::getUpper().
Two types are "congruent" if they are identical, or if they are both pointer types with different pointee types and the same address space.
Definition at line 2314 of file Verifier.cpp.
References llvm::dyn_cast(), llvm::PointerType::getAddressSpace(), and llvm::AArch64CC::PL.
Definition at line 742 of file Verifier.cpp.
References N.
Definition at line 728 of file Verifier.cpp.
References llvm::MDNode::operands().
Definition at line 747 of file Verifier.cpp.
References N.
1.8.6