#
ba3fa6c6 |
| 23-Sep-2008 |
Devang Patel <dpatel@apple.com> |
s/ParameterAttributes/Attributes/g
llvm-svn: 56513
|
#
a79db30d |
| 04-Sep-2008 |
Dan Gohman <gohman@apple.com> |
Tidy up several unbeseeming casts from pointer to intptr_t.
llvm-svn: 55779
|
#
fb46605e |
| 16-Jun-2008 |
Chris Lattner <sabre@nondot.org> |
simplify some code by using a helper function. This really really wants a 'nocapture' predicate.
llvm-svn: 52304
|
#
2d33297d |
| 16-Jun-2008 |
Chris Lattner <sabre@nondot.org> |
move a bunch of predicates up into their own section in this file, no other changes.
llvm-svn: 52303
|
#
fa48258a |
| 16-Jun-2008 |
Chris Lattner <sabre@nondot.org> |
Other parts of this code treat noalias arguments as objects for the purposes of escape analysis.
llvm-svn: 52302
|
#
b35d9b5e |
| 16-Jun-2008 |
Chris Lattner <sabre@nondot.org> |
If we are checking to see if the result of a call aliases a pointer derived from a local allocation, if the local allocation never escapes, the pointers can't alias. This implements PR2436
llvm-svn
If we are checking to see if the result of a call aliases a pointer derived from a local allocation, if the local allocation never escapes, the pointers can't alias. This implements PR2436
llvm-svn: 52301
show more ...
|
#
98ad816f |
| 16-Jun-2008 |
Chris Lattner <sabre@nondot.org> |
Refactor basicaa's main alias function somethin' fierce. This fixes several minor bugs (such as returning noalias for comparisons between external weak functions an null) but is mostly a cleanup.
Refactor basicaa's main alias function somethin' fierce. This fixes several minor bugs (such as returning noalias for comparisons between external weak functions an null) but is mostly a cleanup.
llvm-svn: 52299
show more ...
|
Revision tags: llvmorg-2.3.0 |
|
#
416867a8 |
| 02-Jun-2008 |
Wojciech Matyjewicz <wmatyjewicz@fastmail.fm> |
Fixes PR2395. Looking for a constant in a GEP tail (when the first GEP is longer than the second one) should stop after finding one. Added break instruction guarantees it. It also changes differenc
Fixes PR2395. Looking for a constant in a GEP tail (when the first GEP is longer than the second one) should stop after finding one. Added break instruction guarantees it. It also changes difference between offsets to absolute value of this difference in the condition.
llvm-svn: 51875
show more ...
|
#
d78c400b |
| 13-May-2008 |
Dan Gohman <gohman@apple.com> |
Clean up the use of static and anonymous namespaces. This turned up several things that were neither in an anonymous namespace nor static but not intended to be global.
llvm-svn: 51017
|
#
5429033c |
| 21-Apr-2008 |
Duncan Sands <baldrick@free.fr> |
Fix a "large integer implicitly truncated to unsigned type" warning.
llvm-svn: 50033
|
#
8fc8a272 |
| 15-Apr-2008 |
Dale Johannesen <dalej@apple.com> |
Don't assume a tail call can't reference a byval argument to the outer function, this isn't correct.
llvm-svn: 49731
|
#
80e43fa7 |
| 20-Mar-2008 |
Devang Patel <dpatel@apple.com> |
Restore isCFGOnly property of various analysis passes.
llvm-svn: 48579
|
#
718da668 |
| 19-Mar-2008 |
Devang Patel <dpatel@apple.com> |
PassInfo keep tracks whether a pass is an analysis pass or not.
llvm-svn: 48554
|
#
eec73618 |
| 19-Feb-2008 |
Duncan Sands <baldrick@free.fr> |
Fix a compiler warning.
llvm-svn: 47328
|
#
d2d7c6b3 |
| 19-Feb-2008 |
Owen Anderson <resistor@mac.com> |
In addition to arguments passed to it, memcpy (and all other calls) can ModRef pointers that alias their arguments as well. This fixes PR2057.
llvm-svn: 47317
|
#
8ed77c41 |
| 18-Feb-2008 |
Chris Lattner <sabre@nondot.org> |
don't bother calling getUnderlyingObject for non-pointers.
llvm-svn: 47272
|
#
cc01ebba |
| 18-Feb-2008 |
Owen Anderson <resistor@mac.com> |
Since we're not checking for the more general AllocationInst first, we need to explicitly check that Object is an Argument before casting it to one.
llvm-svn: 47268
|
#
bdf7ed94 |
| 18-Feb-2008 |
Owen Anderson <resistor@mac.com> |
This check is not correct for mallocs, so exclude them earlier.
llvm-svn: 47263
|
#
57a98b7f |
| 18-Feb-2008 |
Owen Anderson <resistor@mac.com> |
Fix a comment, and a bug where we weren't applying the tail call logic in cases that failed the first test.
llvm-svn: 47253
|
#
fa2ba535 |
| 18-Feb-2008 |
Owen Anderson <resistor@mac.com> |
Fix bugs that Chris noticed in my last patch.
llvm-svn: 47252
|
#
8432cc66 |
| 18-Feb-2008 |
Chris Lattner <sabre@nondot.org> |
bitcasts of pointers are always pointers. If we see a memcpy of a pointer, make sure to check later uses of the pointer as well.
llvm-svn: 47250
|
#
2e3edf19 |
| 17-Feb-2008 |
Owen Anderson <resistor@mac.com> |
Teach getModRefInfo that memcpy, memmove, and memset don't "capture" memory addresses. Also, noalias arguments are be considered "like" stack allocated ones for this purpose, because the only way the
Teach getModRefInfo that memcpy, memmove, and memset don't "capture" memory addresses. Also, noalias arguments are be considered "like" stack allocated ones for this purpose, because the only way they can be modref'ed is if they escape somewhere in the current function.
llvm-svn: 47247
show more ...
|
Revision tags: llvmorg-2.2.0 |
|
#
23dd0551 |
| 24-Jan-2008 |
Chris Lattner <sabre@nondot.org> |
getUnderlyingObject can return null, handle this.
llvm-svn: 46318
|
#
9104d712 |
| 24-Jan-2008 |
Chris Lattner <sabre@nondot.org> |
Teach basicaa that 'byval' arguments define a new memory location that can't be aliased to other known objects. This allows us to know that byval pointer args don't alias globals, etc.
llvm-svn: 4
Teach basicaa that 'byval' arguments define a new memory location that can't be aliased to other known objects. This allows us to know that byval pointer args don't alias globals, etc.
llvm-svn: 46315
show more ...
|
#
f3ebc3f3 |
| 29-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
Remove attribution from file headers, per discussion on llvmdev.
llvm-svn: 45418
|