aboutsummaryrefslogtreecommitdiff
path: root/lib/Analysis/LiveVariables.cpp
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2008-09-26 16:26:36 +0000
committerTed Kremenek <kremenek@apple.com>2008-09-26 16:26:36 +0000
commitfcd06f77beadf0642bd008fdf596378f8570b55c (patch)
tree67a92296aed95a6468cf2d2b7de23598f6a49165 /lib/Analysis/LiveVariables.cpp
parent4f6a7d7ead09b439216c32f2de806a998aeb222a (diff)
Move VLA processing logic from LiveVariables to CFG construction. This way all dataflow analyses "see" the VLA size expressions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56655 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/LiveVariables.cpp')
-rw-r--r--lib/Analysis/LiveVariables.cpp20
1 files changed, 0 insertions, 20 deletions
diff --git a/lib/Analysis/LiveVariables.cpp b/lib/Analysis/LiveVariables.cpp
index e82c1e0bc0..58affbfcda 100644
--- a/lib/Analysis/LiveVariables.cpp
+++ b/lib/Analysis/LiveVariables.cpp
@@ -226,18 +226,6 @@ void TransferFuncs::VisitAssign(BinaryOperator* B) {
Visit(B->getRHS());
}
-static VariableArrayType* FindVA(Type* t) {
- while (ArrayType* vt = dyn_cast<ArrayType>(t)) {
- if (VariableArrayType* vat = dyn_cast<VariableArrayType>(vt))
- if (vat->getSizeExpr())
- return vat;
-
- t = vt->getElementType().getTypePtr();
- }
-
- return NULL;
-}
-
void TransferFuncs::VisitDeclStmt(DeclStmt* DS) {
// Declarations effectively "kill" a variable since they cannot
// possibly be live before they are declared.
@@ -253,14 +241,6 @@ void TransferFuncs::VisitDeclStmt(DeclStmt* DS) {
// Update liveness information by killing the VarDecl.
unsigned bit = AD.getIdx(VD);
LiveState.getDeclBit(bit) = Dead | AD.AlwaysLive.getDeclBit(bit);
-
- // If the type of VD is a VLA, then we must process its size expressions.
- // These expressions are evaluated before the variable comes into scope,
- // so in a reverse dataflow analysis we evaluate them last.
- for (VariableArrayType* VA = FindVA(VD->getType().getTypePtr()); VA != 0;
- VA = FindVA(VA->getElementType().getTypePtr()))
- Visit(VA->getSizeExpr());
-
}
}