Make sure the only user of InlineAsm's are direct calls.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25626 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2006-01-26 00:08:45 +00:00
parent 3f970fd567
commit 3188b73642

View File

@ -47,6 +47,7 @@
#include "llvm/Module.h"
#include "llvm/ModuleProvider.h"
#include "llvm/DerivedTypes.h"
#include "llvm/InlineAsm.h"
#include "llvm/Instructions.h"
#include "llvm/Intrinsics.h"
#include "llvm/PassManager.h"
@ -663,6 +664,9 @@ void Verifier::visitInstruction(Instruction &I) {
!EF->dominates(&BB->getParent()->getEntryBlock(), PredBB),
"Instruction does not dominate all uses!", Op, &I);
}
} else if (isa<InlineAsm>(I.getOperand(i))) {
Assert1(i == 0 && isa<CallInst>(I),
"Cannot take the address of an inline asm!", &I);
}
}
InstsInThisBlock.insert(&I);