Teach LazyValueInfo that allocas aren't NULL. Over all of llvm-test, this saves
commit7ab98871b8286cff089d38c37e7d8cd1bffcadcb
authorNick Lewycky <nicholas@mxc.ca>
Sat, 15 Jan 2011 09:16:12 +0000 (15 09:16 +0000)
committerNick Lewycky <nicholas@mxc.ca>
Sat, 15 Jan 2011 09:16:12 +0000 (15 09:16 +0000)
tree639db777db47724c50af56a71af27b32db876d32
parent9032a5699989ff19bc54281ccdaeea799340a907
Teach LazyValueInfo that allocas aren't NULL. Over all of llvm-test, this saves
half a million non-local queries, each of which would otherwise have triggered a
linear scan over a basic block.

Also fix a fixme for memory intrinsics which dereference pointers. With this,
we prove that a pointer is non-null because it was dereferenced by an intrinsic
112 times in llvm-test.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123533 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/IntrinsicInst.h
lib/Analysis/LazyValueInfo.cpp