clang  6.0.0svn
Classes | Namespaces | Functions | Variables
LoopUnrolling.cpp File Reference
#include "clang/ASTMatchers/ASTMatchers.h"
#include "clang/ASTMatchers/ASTMatchFinder.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/LoopUnrolling.h"
Include dependency graph for LoopUnrolling.cpp:

Go to the source code of this file.

Classes

struct  LoopState
 

Namespaces

 clang
 Dataflow Directional Tag Classes.
 
 clang::ento
 

Functions

static bool clang::ento::isLoopStmt (const Stmt *S)
 
ProgramStateRef clang::ento::processLoopEnd (const Stmt *LoopStmt, ProgramStateRef State)
 Updates the given ProgramState. More...
 
static internal::Matcher< Stmtclang::ento::simpleCondition (StringRef BindName)
 
static internal::Matcher< Stmtclang::ento::changeIntBoundNode (internal::Matcher< Decl > VarNodeMatcher)
 
static internal::Matcher< Stmtclang::ento::callByRef (internal::Matcher< Decl > VarNodeMatcher)
 
static internal::Matcher< Stmtclang::ento::assignedToRef (internal::Matcher< Decl > VarNodeMatcher)
 
static internal::Matcher< Stmtclang::ento::getAddrTo (internal::Matcher< Decl > VarNodeMatcher)
 
static internal::Matcher< Stmtclang::ento::hasSuspiciousStmt (StringRef NodeName)
 
static internal::Matcher< Stmtclang::ento::forLoopMatcher ()
 
static bool clang::ento::isPossiblyEscaped (const VarDecl *VD, ExplodedNode *N)
 
bool clang::ento::shouldCompletelyUnroll (const Stmt *LoopStmt, ASTContext &ASTCtx, ExplodedNode *Pred, unsigned &maxStep)
 
bool clang::ento::madeNewBranch (ExplodedNode *N, const Stmt *LoopStmt)
 
ProgramStateRef clang::ento::updateLoopStack (const Stmt *LoopStmt, ASTContext &ASTCtx, ExplodedNode *Pred, unsigned maxVisitOnPath)
 Updates the stack of loops contained by the ProgramState. More...
 
bool clang::ento::isUnrolledState (ProgramStateRef State)
 Returns if the given State indicates that is inside a completely unrolled loop. More...
 

Variables

static const int MAXIMUM_STEP_UNROLLED = 128
 

Variable Documentation

◆ MAXIMUM_STEP_UNROLLED

const int MAXIMUM_STEP_UNROLLED = 128
static

Definition at line 26 of file LoopUnrolling.cpp.

Referenced by clang::ento::updateLoopStack().