Extend CaptureTracking to indicate when a value is never stored, even
authorDan Gohman <gohman@apple.com>
Thu, 19 Nov 2009 21:57:48 +0000 (21:57 +0000)
committerDan Gohman <gohman@apple.com>
Thu, 19 Nov 2009 21:57:48 +0000 (21:57 +0000)
commitf94b5edc452c32d9ae258e7de30c33391fda6cc9
tree3e3d625dfac1b337e2c16274d369855e252bef6b
parent07ba906413ed0e8e196a6795665f349ba8fdca4c
Extend CaptureTracking to indicate when a value is never stored, even
if it is not ultimately captured. Teach BasicAliasAnalysis that a
local object address which does not escape and is never stored does
not alias with a value resulting from a load.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89398 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/Analysis/CaptureTracking.h
lib/Analysis/BasicAliasAnalysis.cpp
lib/Analysis/CaptureTracking.cpp
lib/Transforms/IPO/FunctionAttrs.cpp
test/Transforms/GVN/nonescaping-malloc.ll [new file with mode: 0644]