LLVM API Documentation

Verifier.cpp File Reference

#include "llvm/Analysis/Verifier.h"
#include "llvm/CallingConv.h"
#include "llvm/Constants.h"
#include "llvm/DerivedTypes.h"
#include "llvm/InlineAsm.h"
#include "llvm/IntrinsicInst.h"
#include "llvm/Module.h"
#include "llvm/ModuleProvider.h"
#include "llvm/Pass.h"
#include "llvm/PassManager.h"
#include "llvm/Analysis/Dominators.h"
#include "llvm/Assembly/Writer.h"
#include "llvm/CodeGen/ValueTypes.h"
#include "llvm/Support/CallSite.h"
#include "llvm/Support/CFG.h"
#include "llvm/Support/InstVisitor.h"
#include "llvm/Support/Streams.h"
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/Support/Compiler.h"
#include <algorithm>
#include <sstream>
#include <cstdarg>
#include "llvm/Intrinsics.gen"

Include dependency graph for Verifier.cpp:

Go to the source code of this file.

Defines

#define Assert(C, M)   do { if (!(C)) { CheckFailed(M); return; } } while (0)
#define Assert1(C, M, V1)   do { if (!(C)) { CheckFailed(M, V1); return; } } while (0)
#define Assert2(C, M, V1, V2)   do { if (!(C)) { CheckFailed(M, V1, V2); return; } } while (0)
#define Assert3(C, M, V1, V2, V3)   do { if (!(C)) { CheckFailed(M, V1, V2, V3); return; } } while (0)
#define Assert4(C, M, V1, V2, V3, V4)   do { if (!(C)) { CheckFailed(M, V1, V2, V3, V4); return; } } while (0)
#define GET_INTRINSIC_VERIFIER

Functions

static bool VerifyAttributeCount (const AttrListPtr &Attrs, unsigned Params)
FunctionPassllvm::createVerifierPass (VerifierFailureAction action=AbortProcessAction)
 Create a verifier pass.
bool llvm::verifyFunction (const Function &F, VerifierFailureAction action=AbortProcessAction)
bool llvm::verifyModule (const Module &M, VerifierFailureAction action=AbortProcessAction, std::string *ErrorInfo=0)
 Check a module for errors.

Variables

static RegisterPass< PreVerifier > PreVer ("preverify","Preliminary module verification")
static const PassInfo *const PreVerifyID = &PreVer
static RegisterPass< Verifier > X ("verify","Module Verifier")
static const unsigned ExtendedElementVectorType = 0x40000000
static const unsigned TruncatedElementVectorType = 0x20000000


Define Documentation

#define Assert ( C,
M   )     do { if (!(C)) { CheckFailed(M); return; } } while (0)

Definition at line 327 of file Verifier.cpp.

#define Assert1 ( C,
M,
V1   )     do { if (!(C)) { CheckFailed(M, V1); return; } } while (0)

Definition at line 329 of file Verifier.cpp.

#define Assert2 ( C,
M,
V1,
V2   )     do { if (!(C)) { CheckFailed(M, V1, V2); return; } } while (0)

Definition at line 331 of file Verifier.cpp.

#define Assert3 ( C,
M,
V1,
V2,
V3   )     do { if (!(C)) { CheckFailed(M, V1, V2, V3); return; } } while (0)

Definition at line 333 of file Verifier.cpp.

#define Assert4 ( C,
M,
V1,
V2,
V3,
V4   )     do { if (!(C)) { CheckFailed(M, V1, V2, V3, V4); return; } } while (0)

Definition at line 335 of file Verifier.cpp.

#define GET_INTRINSIC_VERIFIER


Function Documentation

static bool VerifyAttributeCount ( const AttrListPtr Attrs,
unsigned  Params 
) [static]


Variable Documentation

Definition at line 112 of file Verifier.cpp.

bool Broken

Definition at line 110 of file Verifier.cpp.

Definition at line 115 of file Verifier.cpp.

const unsigned ExtendedElementVectorType = 0x40000000 [static]

Definition at line 1318 of file Verifier.cpp.

char ID [static]

Definition at line 71 of file Verifier.cpp.

InstInThisBlock - when verifying a basic block, keep track of all of the instructions we have seen so far. This allows us to do efficient dominance checks for the case when an instruction has an operand that is an instruction in the same block.

Definition at line 122 of file Verifier.cpp.

Definition at line 114 of file Verifier.cpp.

std::stringstream msgs

Definition at line 116 of file Verifier.cpp.

RegisterPass<PreVerifier> PreVer("preverify","Preliminary module verification") [static]

const PassInfo* const PreVerifyID = &PreVer [static]

Definition at line 104 of file Verifier.cpp.

bool RealPass

Definition at line 111 of file Verifier.cpp.

const unsigned TruncatedElementVectorType = 0x20000000 [static]

Definition at line 1319 of file Verifier.cpp.

RegisterPass<Verifier> X("verify","Module Verifier") [static]




This web site is hosted by the Computer Science Department at the University of Illinois at Urbana-Champaign.