Showing content from https://clang.llvm.org/doxygen/classclang_1_1ento_1_1MemRegionManager.html below:
clang: clang::ento::MemRegionManager Class Reference
#include "clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h"
MemRegionManager (ASTContext &c, llvm::BumpPtrAllocator &a) ~MemRegionManager () ASTContext & getContext () const ASTContext & getContext () const llvm::BumpPtrAllocator & getAllocator () DefinedOrUnknownSVal getStaticSize (const MemRegion *MR, SValBuilder &SVB) const const StackLocalsSpaceRegion * getStackLocalsRegion (const StackFrameContext *STC) getStackLocalsRegion - Retrieve the memory region associated with the specified stack frame.
const StackArgumentsSpaceRegion * getStackArgumentsRegion (const StackFrameContext *STC) getStackArgumentsRegion - Retrieve the memory region associated with function/method arguments of the specified stack frame.
const GlobalsSpaceRegion * getGlobalsRegion (MemRegion::Kind K=MemRegion::GlobalInternalSpaceRegionKind, const CodeTextRegion *R=nullptr) getGlobalsRegion - Retrieve the memory region associated with global variables.
const HeapSpaceRegion * getHeapRegion () getHeapRegion - Retrieve the memory region associated with the generic "heap".
const UnknownSpaceRegion * getUnknownRegion () getUnknownRegion - Retrieve the memory region associated with unknown memory space.
const CodeSpaceRegion * getCodeRegion () const AllocaRegion * getAllocaRegion (const Expr *Ex, unsigned Cnt, const LocationContext *LC) getAllocaRegion - Retrieve a region associated with a call to alloca().
const CompoundLiteralRegion * getCompoundLiteralRegion (const CompoundLiteralExpr *CL, const LocationContext *LC) getCompoundLiteralRegion - Retrieve the region associated with a given CompoundLiteral.
const CXXThisRegion * getCXXThisRegion (QualType thisPointerTy, const LocationContext *LC) getCXXThisRegion - Retrieve the [artificial] region associated with the parameter 'this'.
const SymbolicRegion * getSymbolicRegion (SymbolRef Sym, const MemSpaceRegion *MemSpace=nullptr) Retrieve or create a "symbolic" memory region.
const SymbolicRegion * getSymbolicHeapRegion (SymbolRef sym) Return a unique symbolic region belonging to heap memory space.
const StringRegion * getStringRegion (const StringLiteral *Str) const ObjCStringRegion * getObjCStringRegion (const ObjCStringLiteral *Str) const VarRegion * getVarRegion (const VarDecl *VD, const LocationContext *LC) getVarRegion - Retrieve or create the memory region associated with a specified VarDecl and LocationContext.
const NonParamVarRegion * getNonParamVarRegion (const VarDecl *VD, const MemRegion *superR) getVarRegion - Retrieve or create the memory region associated with a specified VarDecl and LocationContext.
const ParamVarRegion * getParamVarRegion (const Expr *OriginExpr, unsigned Index, const LocationContext *LC) getParamVarRegion - Retrieve or create the memory region associated with a specified CallExpr, Index and LocationContext.
const ElementRegion * getElementRegion (QualType elementType, NonLoc Idx, const SubRegion *superRegion, const ASTContext &Ctx) getElementRegion - Retrieve the memory region associated with the associated element type, index, and super region.
const ElementRegion * getElementRegionWithSuper (const ElementRegion *ER, const SubRegion *superRegion) const FieldRegion * getFieldRegion (const FieldDecl *fd, const SubRegion *superRegion) getFieldRegion - Retrieve or create the memory region associated with a specified FieldDecl.
const FieldRegion * getFieldRegionWithSuper (const FieldRegion *FR, const SubRegion *superRegion) const ObjCIvarRegion * getObjCIvarRegion (const ObjCIvarDecl *ivd, const SubRegion *superRegion) getObjCIvarRegion - Retrieve or create the memory region associated with a specified Objective-c instance variable.
const CXXTempObjectRegion * getCXXTempObjectRegion (Expr const *Ex, LocationContext const *LC) const CXXLifetimeExtendedObjectRegion * getCXXLifetimeExtendedObjectRegion (Expr const *Ex, ValueDecl const *VD, LocationContext const *LC) Create a CXXLifetimeExtendedObjectRegion for temporaries which are lifetime-extended by local references.
const CXXLifetimeExtendedObjectRegion * getCXXStaticLifetimeExtendedObjectRegion (const Expr *Ex, ValueDecl const *VD) Create a CXXLifetimeExtendedObjectRegion for temporaries which are lifetime-extended by static references.
const CXXBaseObjectRegion * getCXXBaseObjectRegion (const CXXRecordDecl *BaseClass, const SubRegion *Super, bool IsVirtual) Create a CXXBaseObjectRegion with the given base class for region Super
.
const CXXBaseObjectRegion * getCXXBaseObjectRegionWithSuper (const CXXBaseObjectRegion *baseReg, const SubRegion *superRegion) Create a CXXBaseObjectRegion with the same CXXRecordDecl but a different super region.
const CXXDerivedObjectRegion * getCXXDerivedObjectRegion (const CXXRecordDecl *BaseClass, const SubRegion *Super) Create a CXXDerivedObjectRegion with the given derived class for region Super
.
const FunctionCodeRegion * getFunctionCodeRegion (const NamedDecl *FD) const BlockCodeRegion * getBlockCodeRegion (const BlockDecl *BD, CanQualType locTy, AnalysisDeclContext *AC) const BlockDataRegion * getBlockDataRegion (const BlockCodeRegion *bc, const LocationContext *lc, unsigned blockCount) getBlockDataRegion - Get the memory region associated with an instance of a block.
Definition at line 1404 of file MemRegion.h.
◆ MemRegionManager() clang::ento::MemRegionManager::MemRegionManager ( ASTContext & c, llvm::BumpPtrAllocator & a ) inline
Definition at line 1426 of file MemRegion.h.
◆ ~MemRegionManager() MemRegionManager::~MemRegionManager ( ) default ◆ getAllocaRegion() ◆ getAllocator() llvm::BumpPtrAllocator & clang::ento::MemRegionManager::getAllocator ( ) inline
Definition at line 1432 of file MemRegion.h.
◆ getBlockCodeRegion() ◆ getBlockDataRegion() ◆ getCodeRegion() ◆ getCompoundLiteralRegion() ◆ getContext() [1/2] ASTContext & clang::ento::MemRegionManager::getContext ( ) inline ◆ getContext() [2/2] ◆ getCXXBaseObjectRegion() ◆ getCXXBaseObjectRegionWithSuper() ◆ getCXXDerivedObjectRegion() ◆ getCXXLifetimeExtendedObjectRegion() ◆ getCXXStaticLifetimeExtendedObjectRegion() ◆ getCXXTempObjectRegion() ◆ getCXXThisRegion() ◆ getElementRegion()
getElementRegion - Retrieve the memory region associated with the associated element type, index, and super region.
Definition at line 1193 of file MemRegion.cpp.
References clang::ASTContext::getCanonicalType(), clang::CanQual< T >::getUnqualifiedType(), and clang::T.
Referenced by bindRequiredArrayElementToEnvironment(), clang::ento::ExprEngine::computeObjectUnderConstruction(), getElementRegionWithSuper(), clang::ento::StoreManager::GetElementZeroRegion(), clang::ento::StoreManager::getLValueElement(), clang::ento::StoreManager::MakeElementRegion(), and clang::ento::ExprEngine::VisitCXXNewExpr().
◆ getElementRegionWithSuper() ◆ getFieldRegion()
getFieldRegion - Retrieve or create the memory region associated with a specified FieldDecl.
'superRegion' corresponds to the containing memory region (which typically represents the memory representing a structure or class).
Definition at line 1238 of file MemRegion.cpp.
Referenced by getFieldRegionWithSuper().
◆ getFieldRegionWithSuper() ◆ getFunctionCodeRegion() ◆ getGlobalsRegion() ◆ getHeapRegion() ◆ getNonParamVarRegion() ◆ getObjCIvarRegion()
getObjCIvarRegion - Retrieve or create the memory region associated with a specified Objective-c instance variable.
'superRegion' corresponds to the containing region (which typically represents the Objective-C object).
Definition at line 1244 of file MemRegion.cpp.
◆ getObjCStringRegion() ◆ getParamVarRegion() ◆ getStackArgumentsRegion() ◆ getStackLocalsRegion() ◆ getStaticSize() ◆ getStringRegion() ◆ getSymbolicHeapRegion() ◆ getSymbolicRegion() ◆ getUnknownRegion() ◆ getVarRegion()
getVarRegion - Retrieve or create the memory region associated with a specified VarDecl and LocationContext.
Definition at line 1025 of file MemRegion.cpp.
References D, clang::Type::getAs(), getBlockCodeRegion(), clang::ASTContext::getBlockPointerType(), clang::StackFrameContext::getCallSite(), clang::Decl::getCanonicalDecl(), clang::ASTContext::getCanonicalType(), getContext(), clang::LocationContext::getDecl(), clang::Decl::getDeclContext(), getFunctionCodeRegion(), clang::ASTContext::getFunctionType(), getGlobalsRegion(), clang::Decl::getLocation(), getNonParamVarRegion(), clang::BlockDecl::getSignatureAsWritten(), clang::ASTContext::getSourceManager(), getStackArgumentsRegion(), clang::LocationContext::getStackFrame(), getStackLocalsRegion(), getStackOrCaptureRegionForDeclContext(), getUnknownRegion(), clang::QualType::isConstQualified(), clang::SourceManager::isInSystemHeader(), clang::QualType::isNull(), clang::BlockDecl::parameters(), clang::T, V, and clang::ASTContext::VoidTy.
Referenced by clang::ento::retaincountchecker::RetainCountChecker::checkPostStmt(), clang::ento::ObjCMethodCall::getInitialStackFrameContents(), clang::ento::StoreManager::getLValueVar(), clang::ento::ProgramState::getRegion(), and clang::ento::getWidenedLoopState().
The documentation for this class was generated from the following files:
RetroSearch is an open source project built by @garambo
| Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4