mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 04:30:23 +00:00
Add a verifier assertion
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18965 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
fd4b3c4774
commit
56998b26ae
@ -128,7 +128,7 @@ namespace { // Anonymous namespace for class
|
|||||||
}
|
}
|
||||||
|
|
||||||
for (Module::giterator I = M.gbegin(), E = M.gend(); I != E; ++I)
|
for (Module::giterator I = M.gbegin(), E = M.gend(); I != E; ++I)
|
||||||
visitGlobalValue(*I);
|
visitGlobalVariable(*I);
|
||||||
|
|
||||||
// If the module is broken, abort at this time.
|
// If the module is broken, abort at this time.
|
||||||
abortIfBroken();
|
abortIfBroken();
|
||||||
@ -171,6 +171,7 @@ namespace { // Anonymous namespace for class
|
|||||||
// Verification methods...
|
// Verification methods...
|
||||||
void verifySymbolTable(SymbolTable &ST);
|
void verifySymbolTable(SymbolTable &ST);
|
||||||
void visitGlobalValue(GlobalValue &GV);
|
void visitGlobalValue(GlobalValue &GV);
|
||||||
|
void visitGlobalVariable(GlobalVariable &GV);
|
||||||
void visitFunction(Function &F);
|
void visitFunction(Function &F);
|
||||||
void visitBasicBlock(BasicBlock &BB);
|
void visitBasicBlock(BasicBlock &BB);
|
||||||
void visitPHINode(PHINode &PN);
|
void visitPHINode(PHINode &PN);
|
||||||
@ -262,6 +263,16 @@ void Verifier::visitGlobalValue(GlobalValue &GV) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Verifier::visitGlobalVariable(GlobalVariable &GV) {
|
||||||
|
if (GV.hasInitializer())
|
||||||
|
Assert1(GV.getInitializer()->getType() == GV.getType()->getElementType(),
|
||||||
|
"Global variable initializer type does not match global "
|
||||||
|
"variable type!", &GV);
|
||||||
|
|
||||||
|
visitGlobalValue(GV);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// verifySymbolTable - Verify that a function or module symbol table is ok
|
// verifySymbolTable - Verify that a function or module symbol table is ok
|
||||||
//
|
//
|
||||||
void Verifier::verifySymbolTable(SymbolTable &ST) {
|
void Verifier::verifySymbolTable(SymbolTable &ST) {
|
||||||
|
Loading…
Reference in New Issue
Block a user