| 
    clang 22.0.0git
    
   | 
 
#include "clang/Analysis/Analyses/LiveVariables.h"#include "clang/AST/Stmt.h"#include "clang/AST/StmtVisitor.h"#include "clang/Analysis/AnalysisDeclContext.h"#include "clang/Analysis/CFG.h"#include "clang/Analysis/FlowSensitive/DataflowWorklist.h"#include "clang/Basic/SourceManager.h"#include "llvm/ADT/DenseMap.h"#include "llvm/ADT/DenseSet.h"#include "llvm/ADT/STLExtras.h"#include "llvm/Support/raw_ostream.h"#include <optional>#include <vector>Go to the source code of this file.
Functions | |
| static LiveVariablesImpl & | getImpl (void *x) | 
| static bool | isAlwaysAlive (const VarDecl *D) | 
| static const VariableArrayType * | FindVA (QualType Ty) | 
| static const Expr * | LookThroughExpr (const Expr *E) | 
| static void | AddLiveExpr (llvm::ImmutableSet< const Expr * > &Set, llvm::ImmutableSet< const Expr * >::Factory &F, const Expr *E) | 
| static void | AddAllConditionalTerms (llvm::ImmutableSet< const Expr * > &Set, llvm::ImmutableSet< const Expr * >::Factory &F, const Expr *Cond) | 
| Add as a live expression all individual conditions in a logical expression.   | |
| static bool | writeShouldKill (const VarDecl *VD) | 
      
  | 
  static | 
Add as a live expression all individual conditions in a logical expression.
For example, for the expression: "(a < b) || (c && d && ((e || f) != (g && h)))" the following expressions will be added as live: "a < b", "c", "d", "((e || f) != (g && h))"
Definition at line 226 of file LiveVariables.cpp.
References AddAllConditionalTerms(), AddLiveExpr(), clang::Cond, and clang::Set.
Referenced by AddAllConditionalTerms().
      
  | 
  static | 
Definition at line 215 of file LiveVariables.cpp.
References LookThroughExpr(), and clang::Set.
Referenced by AddAllConditionalTerms().
      
  | 
  static | 
Definition at line 185 of file LiveVariables.cpp.
References clang::QualType::getTypePtr().
      
  | 
  static | 
Definition at line 61 of file LiveVariables.cpp.
Referenced by clang::LiveVariables::dumpBlockLiveness(), clang::LiveVariables::dumpExprLiveness(), clang::LiveVariables::isLive(), clang::LiveVariables::isLive(), clang::LiveVariables::isLive(), and clang::LiveVariables::runOnAllBlocks().
Definition at line 142 of file LiveVariables.cpp.
References clang::VarDecl::hasGlobalStorage().
Referenced by clang::LiveVariables::isLive(), clang::LiveVariables::isLive(), and writeShouldKill().
Definition at line 198 of file LiveVariables.cpp.
References clang::Expr::IgnoreParens().
Referenced by AddLiveExpr().
Definition at line 368 of file LiveVariables.cpp.
References clang::ValueDecl::getType(), isAlwaysAlive(), and clang::Type::isReferenceType().