clang
10.0.0git
|
#include "clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/APSIntType.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/SubEngine.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/SValVisitor.h"
Go to the source code of this file.
Functions | |
static bool | isInRelation (BinaryOperator::Opcode Rel, SymbolRef Sym, llvm::APSInt Bound, ProgramStateRef State) |
static bool | isWithinConstantOverflowBounds (SymbolRef Sym, ProgramStateRef State) |
static bool | isWithinConstantOverflowBounds (llvm::APSInt I) |
static std::pair< SymbolRef, llvm::APSInt > | decomposeSymbol (SymbolRef Sym, BasicValueFactory &BV) |
static NonLoc | doRearrangeUnchecked (ProgramStateRef State, BinaryOperator::Opcode Op, SymbolRef LSym, llvm::APSInt LInt, SymbolRef RSym, llvm::APSInt RInt) |
static bool | shouldRearrange (ProgramStateRef State, BinaryOperator::Opcode Op, SymbolRef Sym, llvm::APSInt Int, QualType Ty) |
static Optional< NonLoc > | tryRearrange (ProgramStateRef State, BinaryOperator::Opcode Op, NonLoc Lhs, NonLoc Rhs, QualType ResultTy) |
static SVal | evalBinOpFieldRegionFieldRegion (const FieldRegion *LeftFR, const FieldRegion *RightFR, BinaryOperator::Opcode op, QualType resultTy, SimpleSValBuilder &SVB) |
|
static |
Definition at line 356 of file SimpleSValBuilder.cpp.
References clang::BinaryOperator::isAdditiveOp().
Referenced by tryRearrange().
|
static |
Definition at line 371 of file SimpleSValBuilder.cpp.
References clang::BinaryOperator::isAdditiveOp(), clang::BinaryOperator::isComparisonOp(), and clang::BinaryOperator::reverseComparisonOp().
Referenced by tryRearrange().
|
static |
Definition at line 774 of file SimpleSValBuilder.cpp.
References clang::RecordDecl::fields(), clang::ento::SVal::getAs(), clang::FieldDecl::getParent(), clang::Type::getPointeeType(), getValue(), clang::Type::isAnyPointerType(), clang::BinaryOperator::isComparisonOp(), clang::Type::isVoidType(), clang::prec::PointerToMember, clang::BinaryOperator::reverseComparisonOp(), clang::CodeGen::state, State, and V.
|
static |
Definition at line 313 of file SimpleSValBuilder.cpp.
Referenced by isWithinConstantOverflowBounds().
|
static |
Definition at line 330 of file SimpleSValBuilder.cpp.
References isInRelation(), and clang::Type::isSignedIntegerOrEnumerationType().
Referenced by shouldRearrange().
|
static |
Definition at line 346 of file SimpleSValBuilder.cpp.
|
static |
Definition at line 438 of file SimpleSValBuilder.cpp.
References clang::BinaryOperator::isComparisonOp(), and isWithinConstantOverflowBounds().
Referenced by tryRearrange().
|
static |
Definition at line 446 of file SimpleSValBuilder.cpp.
References decomposeSymbol(), doRearrangeUnchecked(), getValue(), clang::BinaryOperator::isAdditiveOp(), clang::BinaryOperator::isComparisonOp(), clang::Type::isIntegralOrEnumerationType(), clang::QualType::isNull(), clang::Type::isSignedIntegerOrEnumerationType(), clang::prec::PointerToMember, shouldRearrange(), and clang::CodeGen::state.