diff options
Diffstat (limited to 'lib/Analysis/LiveVariables.cpp')
-rw-r--r-- | lib/Analysis/LiveVariables.cpp | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/lib/Analysis/LiveVariables.cpp b/lib/Analysis/LiveVariables.cpp index 0fe87e8719..7b36f85ab6 100644 --- a/lib/Analysis/LiveVariables.cpp +++ b/lib/Analysis/LiveVariables.cpp @@ -142,12 +142,8 @@ void TransferFuncs::Visit(Stmt *S) { if (AD.Observer) AD.Observer->ObserveStmt(S, currentBlock, AD, LiveState); - if (getCFG().isBlkExpr(S)) { - if (Expr *E = dyn_cast<Expr>(S)) - LiveState(E->IgnoreParens(), AD) = Dead; - else - LiveState(S, AD) = Dead; - } + if (getCFG().isBlkExpr(S)) + LiveState(S, AD) = Dead; StmtVisitor<TransferFuncs,void>::Visit(S); } @@ -161,10 +157,7 @@ void TransferFuncs::Visit(Stmt *S) { } else { // For block-level expressions, mark that they are live. - if (Expr *E = dyn_cast<Expr>(S)) - LiveState(E->IgnoreParens(), AD) = Alive; - else - LiveState(S, AD) = Alive; + LiveState(S, AD) = Alive; } } @@ -181,9 +174,6 @@ void TransferFuncs::VisitTerminator(CFGBlock* B) { return; assert (getCFG().isBlkExpr(E)); - - if (const Expr *Ex = dyn_cast<Expr>(E)) - E = Ex->IgnoreParens(); LiveState(E, AD) = Alive; } |