History log of /llvm-project/llvm/lib/Analysis/CaptureTracking.cpp (Results 101 – 115 of 115)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# a8c144d5 20-Nov-2009 Dan Gohman <gohman@apple.com>

Revert the rule that considers comparisons between two pointers in the
same object to be a non-capture; Duncan pointed out a way that such
a comparison could be a capture.

Make the rule that conside

Revert the rule that considers comparisons between two pointers in the
same object to be a non-capture; Duncan pointed out a way that such
a comparison could be a capture.

Make the rule that considers a comparison against null more specific,
and only consider noalias return values compared against null. This
still supports test/Transforms/GVN/nonescaping-malloc.ll, and is not
susceptible to the problem Duncan pointed out with noalias arguments.

llvm-svn: 89468

show more ...


# 6d919f16 20-Nov-2009 Dan Gohman <gohman@apple.com>

Simplify this code; it's not necessary to check isIdentifiedObject here
because if the results from getUnderlyingObject match, the values must
be from the same underlying object, even if we don't kno

Simplify this code; it's not necessary to check isIdentifiedObject here
because if the results from getUnderlyingObject match, the values must
be from the same underlying object, even if we don't know what that
object is.

llvm-svn: 89434

show more ...


# 91449224 20-Nov-2009 Dan Gohman <gohman@apple.com>

Refine the capture tracking rules for comparisons to be more
careful about crazy methods of capturing pointers using comparisons.
Comparisons of identified objects with null in the default address
sp

Refine the capture tracking rules for comparisons to be more
careful about crazy methods of capturing pointers using comparisons.
Comparisons of identified objects with null in the default address
space are not captures. And, comparisons of two pointers within the
same identified object are not captures.

llvm-svn: 89421

show more ...


# 01956f5a 20-Nov-2009 Dan Gohman <gohman@apple.com>

Use isVoidTy().

llvm-svn: 89419


# 772f922a 19-Nov-2009 Dan Gohman <gohman@apple.com>

Refine this to only apply to null in the default address space.

llvm-svn: 89411


# 94e61762 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

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.

llvm-svn: 89398

show more ...


# 0a2ba106 19-Nov-2009 Dan Gohman <gohman@apple.com>

Comparing a pointer with null is not a capture.

llvm-svn: 89389


# e9dccd49 03-Nov-2009 Chris Lattner <sabre@nondot.org>

remove a check of isFreeCall: the argument to free is already nocapture so the generic call code works fine.

llvm-svn: 85865


# f390e04a 27-Oct-2009 Victor Hernandez <vhernandez@apple.com>

Rename MallocFreeHelper as MemoryBuiltins

llvm-svn: 85286


# 762195bd 26-Oct-2009 Victor Hernandez <vhernandez@apple.com>

Rename MallocHelper as MallocFreeHelper, since it now also identifies calls to free()

llvm-svn: 85181


# de5ad42a 26-Oct-2009 Victor Hernandez <vhernandez@apple.com>

Remove FreeInst.
Remove LowerAllocations pass.
Update some more passes to treate free calls just like they were treating FreeInst.

llvm-svn: 85176


Revision tags: llvmorg-2.6.0
# 55f1c09e 13-Aug-2009 Owen Anderson <resistor@mac.com>

Push LLVMContexts through the IntegerType APIs.

llvm-svn: 78948


# 7a8cfafd 07-May-2009 Duncan Sands <baldrick@free.fr>

Revert r70876 and add a testcase (@c7) showing the problem:
bits captured, but the pointer marked nocapture. In fact
I now recall that this problem is why only readnone functions
returning void were

Revert r70876 and add a testcase (@c7) showing the problem:
bits captured, but the pointer marked nocapture. In fact
I now recall that this problem is why only readnone functions
returning void were considered before! However keep a small
fix that was also in r70876: a readnone function returning
void can result in bits being captured if it unwinds, so
test for this.

llvm-svn: 71168

show more ...


# 50c70336 04-May-2009 Duncan Sands <baldrick@free.fr>

Teach capture tracking that readonly functions can
only capture their arguments by returning them or
throwing an exception or not based on the argument
value. Patch essentially by Frits van Bommel.

Teach capture tracking that readonly functions can
only capture their arguments by returning them or
throwing an exception or not based on the argument
value. Patch essentially by Frits van Bommel.

llvm-svn: 70876

show more ...


Revision tags: llvmorg-2.5.0
# e0aa0d67 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 ver

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

llvm-svn: 62461

show more ...


12345