History log of /llvm-project/clang/lib/Analysis/LiveVariables.cpp (Results 101 – 122 of 122)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 99d4ff3c 14-Nov-2008 Ted Kremenek <kremenek@apple.com>

Handle the case where 'element' in ObjCforCollectionstmt is not a DeclStmt or DeclRefExpr.

llvm-svn: 59290


# a9d3e6c0 14-Nov-2008 Ted Kremenek <kremenek@apple.com>

Rename header file.
Update include files.

llvm-svn: 59284


# 75db6d75 13-Nov-2008 Ted Kremenek <kremenek@apple.com>

Fix uninitialized variable.

llvm-svn: 59222


# 65dd30fd 12-Nov-2008 Ted Kremenek <kremenek@apple.com>

Update CFGStmtVisitor to recognize that ObjCForCollectionStmts are special block-level "expressions".

llvm-svn: 59176


# 97450fe0 12-Nov-2008 Ted Kremenek <kremenek@apple.com>

Use Stmt* instead of Expr* for block-level expression.

llvm-svn: 59161


# 3b4e1d5c 11-Nov-2008 Ted Kremenek <kremenek@apple.com>

Accesses to a collection within a fast enumeration 'for' statement constitute a 'use'.

llvm-svn: 59075


# 6f28289a 11-Nov-2008 Sebastian Redl <sebastian.redl@getdesigned.at>

Introduce a single AST node SizeOfAlignOfExpr for all sizeof and alignof expressions, both of values and types.

llvm-svn: 59057


# fbd2f400 11-Nov-2008 Ted Kremenek <kremenek@apple.com>

Add transfer function support for ObjCForCollectionStmt to LiveVariables.

llvm-svn: 59053


Revision tags: llvmorg-2.4.0
# 209ad9dc 21-Oct-2008 Douglas Gregor <dgregor@apple.com>

Cosmetic patch from João Paulo Rechi Vita

llvm-svn: 57910


# 61a625ff 26-Sep-2008 Ted Kremenek <kremenek@apple.com>

Move VLA processing logic from LiveVariables to CFG construction. This way all dataflow analyses "see" the VLA size expressions.

llvm-svn: 56655


# 2ece64bb 26-Sep-2008 Ted Kremenek <kremenek@apple.com>

Examine VLA size expressions when computing liveness information.
Fixes <rdar://problem/6248086>

llvm-svn: 56645


# 4f8792b6 05-Aug-2008 Ted Kremenek <kremenek@apple.com>

Added decl_iterator to DeclStmt to provide an abstract interface to iterate over the ScopedDecls of a DeclStmt.
Updated a few clients of DeclStmt::getNextDeclarator() to use decl_iterator instead. W

Added decl_iterator to DeclStmt to provide an abstract interface to iterate over the ScopedDecls of a DeclStmt.
Updated a few clients of DeclStmt::getNextDeclarator() to use decl_iterator instead. Will update other clients after additional testing.

llvm-svn: 54368

show more ...


# 8044046e 03-Jul-2008 Ted Kremenek <kremenek@apple.com>

Fix a bug in the dead stores checker reported in the following email:

http://lists.cs.uiuc.edu/pipermail/cfe-dev/2008-July/002157.html

Essentially the observer mechanism in LiveVariables was obse

Fix a bug in the dead stores checker reported in the following email:

http://lists.cs.uiuc.edu/pipermail/cfe-dev/2008-July/002157.html

Essentially the observer mechanism in LiveVariables was observing block-level
expressions multiple times, leading to a case where the dead store checker could
see a value as dead when it was really live.

llvm-svn: 53115

show more ...


# 5696e7ba 17-Jun-2008 Chris Lattner <sabre@nondot.org>

Change self/_cmd to be instances of ImplicitParamDecl instead of ParmVarDecl.
Patch by David Chisnall!

llvm-svn: 52422


Revision tags: llvmorg-2.3.0
# c1f9a28e 16-Apr-2008 Ted Kremenek <kremenek@apple.com>

Added CFGBlock::getTerminatorCondition() to get the Expr* of the condition a block's terminator.
Refactored LiveVariables to use getTerminatorCondition() in VisitTerminator().

Bug fix: CFG now compu

Added CFGBlock::getTerminatorCondition() to get the Expr* of the condition a block's terminator.
Refactored LiveVariables to use getTerminatorCondition() in VisitTerminator().

Bug fix: CFG now computes Block-level expression numbers using information
from block terminators. This fixes <rdar://problem/5868189>.

llvm-svn: 49818

show more ...


# ed30e8da 16-Apr-2008 Ted Kremenek <kremenek@apple.com>

LiveVariables now updates the liveness state of block-level expressions that
are referenced by CFGBlock terminators.

llvm-svn: 49798


# 82ff6d65 15-Apr-2008 Ted Kremenek <kremenek@apple.com>

Fix bug in terminator processing for uninitialized-values: simply ignore the terminator, don't reprocess it.

LiveVariables analysis now does a flow-insensitive analysis to determine what variables h

Fix bug in terminator processing for uninitialized-values: simply ignore the terminator, don't reprocess it.

LiveVariables analysis now does a flow-insensitive analysis to determine what variables have their address taken; these variables are now always treated as being live.

The DataflowSolver now uses "SetTopValue()" when getting the initial value for the entry/exit block.

llvm-svn: 49734

show more ...


# 8adeebb2 15-Apr-2008 Ted Kremenek <kremenek@apple.com>

Added initial support into the flow-sensitive dataflow solver to visit the Block-level expression
in a block's terminator. This expression is visited within a block, but it is accessed by the
termin

Added initial support into the flow-sensitive dataflow solver to visit the Block-level expression
in a block's terminator. This expression is visited within a block, but it is accessed by the
terminator. This is important to observe because for live-variables analysis the block-level
expression is live between the terminator and where the expression occurs in the block. So far
this hasn't been an issue to not observe this because the block-level expression used in the
terminator is always the last one in the block, and we have never queried the liveness information
about this point (but before the terminator).

llvm-svn: 49709

show more ...


# cd76f95d 15-Apr-2008 Ted Kremenek <kremenek@apple.com>

++/-- makes a variable live since it is used; thus the liveness state is
"Alive" as opposed to staying the same.

llvm-svn: 49707


# f4212bdb 15-Apr-2008 Ted Kremenek <kremenek@apple.com>

Bug fix in LiveVariables: Operators ++/-- may kill a value, but the variable
is still live.

llvm-svn: 49705


# b7151c7c 20-Mar-2008 Ted Kremenek <kremenek@apple.com>

LiveVariables analysis now uses intersect for the merge of block-level expression liveness information.
The rationale is that a block-level expression cannot be live in a parent block unless it is li

LiveVariables analysis now uses intersect for the merge of block-level expression liveness information.
The rationale is that a block-level expression cannot be live in a parent block unless it is live in all of the successor blocks.

llvm-svn: 48618

show more ...


# 7a51313d 15-Mar-2008 Chris Lattner <sabre@nondot.org>

Make a major restructuring of the clang tree: introduce a top-level
lib dir and move all the libraries into it. This follows the main
llvm tree, and allows the libraries to be built in parallel. Th

Make a major restructuring of the clang tree: introduce a top-level
lib dir and move all the libraries into it. This follows the main
llvm tree, and allows the libraries to be built in parallel. The
top level now enforces that all the libs are built before Driver,
but we don't care what order the libs are built in. This speeds
up parallel builds, particularly incremental ones.

llvm-svn: 48402

show more ...


12345