History log of /external/llvm/include/llvm/Analysis/CaptureTracking.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
36b56886974eae4f9c5ebc96befd3e7bfe5de338 24-Apr-2014 Stephen Hines <srhines@google.com> Update to LLVM 3.5a.

Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
/external/llvm/include/llvm/Analysis/CaptureTracking.h
ec3bb4b660fc2f8353c510ebfc15277bcf28df8b 10-Mar-2013 Jakub Staszak <kubastaszak@gmail.com> Remove unneeded #includes. Use forward declarations instead.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176783 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Analysis/CaptureTracking.h
0b8c9a80f20772c3793201ab5b251d3520b9cea3 02-Jan-2013 Chandler Carruth <chandlerc@gmail.com> Move all of the header files which are involved in modelling the LLVM IR
into their new header subdirectory: include/llvm/IR. This matches the
directory structure of lib, and begins to correct a long standing point
of file layout clutter in LLVM.

There are still more header files to move here, but I wanted to handle
them in separate commits to make tracking what files make sense at each
layer easier.

The only really questionable files here are the target intrinsic
tablegen files. But that's a battle I'd rather not fight today.

I've updated both CMake and Makefile build systems (I think, and my
tests think, but I may have missed something).

I've also re-sorted the includes throughout the project. I'll be
committing updates to Clang, DragonEgg, and Polly momentarily.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Analysis/CaptureTracking.h
255f89faee13dc491cb64fbeae3c763e7e2ea4e6 03-Dec-2012 Chandler Carruth <chandlerc@gmail.com> Sort the #include lines for the include/... tree with the script.

AKA: Recompile *ALL* the source code!

This one went much better. No manual edits here. I spot-checked for
silliness and grep-checked for really broken edits and everything seemed
good. It all still compiles. Yell if you see something that looks goofy.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169133 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Analysis/CaptureTracking.h
c92b8aa79f4a2cd16f7b674189e425c2c367e886 09-Oct-2012 Nick Lewycky <nicholas@mxc.ca> Give CaptureTracker::shouldExplore a base implementation. Most users want to do
the same thing. No functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165435 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Analysis/CaptureTracking.h
bda43e95a03c19868106e8111d7a5bf1c924ec63 17-Jan-2012 Jakub Staszak <kubastaszak@gmail.com> Move includes to the .cpp file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148342 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Analysis/CaptureTracking.h
b48a18903a5769f0ecb295db069252576b1388b0 29-Dec-2011 Nick Lewycky <nicholas@mxc.ca> Change CaptureTracking to pass a Use* instead of a Value* when a value is
captured. This allows the tracker to look at the specific use, which may be
especially interesting for function calls.

Use this to fix 'nocapture' deduction in FunctionAttrs. The existing one does
not iterate until a fixpoint and does not guarantee that it produces the same
result regardless of iteration order. The new implementation builds up a graph
of how arguments are passed from function to function, and uses a bottom-up walk
on the argument-SCCs to assign nocapture. This gets us nocapture more often, and
does so rather efficiently and independent of iteration order.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147327 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Analysis/CaptureTracking.h
6935b78e6f3b7dca7786041c56c9a795d2247659 21-Nov-2011 Nick Lewycky <nicholas@mxc.ca> Add virtual destructor. Whoops!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145044 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Analysis/CaptureTracking.h
7912ef97ffde3ab3334143ddfb4cafdf04e2ebfc 20-Nov-2011 Nick Lewycky <nicholas@mxc.ca> Less template, more virtual! Refactoring suggested by Chris in code review.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145014 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Analysis/CaptureTracking.h
173862e5468fbcf4b022b9088d2c81b25c2d60c5 20-Nov-2011 Nick Lewycky <nicholas@mxc.ca> Refactor code to use new attribute getters on CallSite for NoCapture and ByVal.
Suggested in code review by Eli.

That code in InstCombine looks kinda suspicious.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145013 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Analysis/CaptureTracking.h
88990248d3bfb2f265fcf27f8a032ac0eb14d09f 14-Nov-2011 Nick Lewycky <nicholas@mxc.ca> Refactor capture tracking (which already had a couple flags for whether returns
and stores capture) to permit the caller to see each capture point and decide
whether to continue looking.

Use this inside memdep to do an analysis that basicaa won't do. This lets us
solve another devirtualization case, fixing PR8908!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144580 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Analysis/CaptureTracking.h
0764e39a921ae424e2ac8c7ba114b67040eba8f6 13-Jul-2010 Eric Christopher <echristo@apple.com> 80-columns


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108228 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Analysis/CaptureTracking.h
f94b5edc452c32d9ae258e7de30c33391fda6cc9 19-Nov-2009 Dan Gohman <gohman@apple.com> 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
/external/llvm/include/llvm/Analysis/CaptureTracking.h
8556d2a7f155c7edfaf454a3acda8ce28863c5e4 18-Jan-2009 Duncan Sands <baldrick@free.fr> BasicAliasAnalysis and FunctionAttrs were both
doing very similar pointer capture analysis.
Factor out the common logic. The new version
is from FunctionAttrs since it does a better
job than the version in BasicAliasAnalysis


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62461 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Analysis/CaptureTracking.h