Teach LazyValueInfo that allocas aren't NULL. Over all of llvm-test, this saves
authorNick Lewycky <nicholas@mxc.ca>
Sat, 15 Jan 2011 09:16:12 +0000 (09:16 +0000)
committerNick Lewycky <nicholas@mxc.ca>
Sat, 15 Jan 2011 09:16:12 +0000 (09:16 +0000)
commit786c7cd14174265cfb0847f6e7faf53b6b96f9f6
tree639db777db47724c50af56a71af27b32db876d32
parenta5eaa861e48641916dc40a9be8ade17842ac8d07
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