[LLVMdev] Changes between 2.6 and 2.7: SSA Verifier and visitFreeInst
Chris Lattner
clattner at apple.com
Sat Mar 6 11:14:49 PST 2010
On Mar 6, 2010, at 9:13 AM, Jianzhou Zhao wrote:
> Hi llvm,
>
> 1) The lib/VMCore/Verifier.cpp in 2.7 implements Verifier::VerifyType,
> which is empty in 2.6. I noticed that it does not check all types,
> for example, UnionTyID, OpaqueTyID, LabelTyID, MetadataTyID
> and etc are ignored in the 'default' branch. Does it mean we dont
> need to check them?
They are leaf types (just like integer type), there is nothing to check.
> Another question is: How much does Verifier.cpp check statically?
> Can I take it as a type checker for SSA? Is there any static
> semantics that has not been checked yet?
The verifier is best effort, it does not guarantee correctness.
> 2) visitFreeInst has been removed from lib/ExecutionEngine/Interpreter in 2.7
> Will this have any back-compatible problem when interpreting any
> *.bc from 2.6?
The .bc reader will eliminate freeinst from the ir when reading an old file.
-chris
More information about the llvm-dev
mailing list