|
klee
|
#include <ArrayExprVisitor.h>


Public Member Functions | |
| ArrayReadExprVisitor (std::vector< const ReadExpr * > &_reads, std::map< const ReadExpr *, std::pair< ref< Expr >, Expr::Width > > &_readInfo) | |
| bool | isIncompatible () |
| bool | containsSymbolic () |
Public Member Functions inherited from klee::ExprVisitor | |
| ref< Expr > | visit (const ref< Expr > &e) |
Protected Member Functions | |
| Action | visitConcat (const ConcatExpr &) override |
| Action | visitRead (const ReadExpr &) override |
Protected Member Functions inherited from klee::ExprVisitor | |
| ExprVisitor (bool _recursive=false) | |
| virtual | ~ExprVisitor () |
| virtual Action | visitExpr (const Expr &) |
| virtual Action | visitExprPost (const Expr &) |
| virtual Action | visitNotOptimized (const NotOptimizedExpr &) |
| virtual Action | visitRead (const ReadExpr &) |
| virtual Action | visitSelect (const SelectExpr &) |
| virtual Action | visitConcat (const ConcatExpr &) |
| virtual Action | visitExtract (const ExtractExpr &) |
| virtual Action | visitZExt (const ZExtExpr &) |
| virtual Action | visitSExt (const SExtExpr &) |
| virtual Action | visitAdd (const AddExpr &) |
| virtual Action | visitSub (const SubExpr &) |
| virtual Action | visitMul (const MulExpr &) |
| virtual Action | visitUDiv (const UDivExpr &) |
| virtual Action | visitSDiv (const SDivExpr &) |
| virtual Action | visitURem (const URemExpr &) |
| virtual Action | visitSRem (const SRemExpr &) |
| virtual Action | visitNot (const NotExpr &) |
| virtual Action | visitAnd (const AndExpr &) |
| virtual Action | visitOr (const OrExpr &) |
| virtual Action | visitXor (const XorExpr &) |
| virtual Action | visitShl (const ShlExpr &) |
| virtual Action | visitLShr (const LShrExpr &) |
| virtual Action | visitAShr (const AShrExpr &) |
| virtual Action | visitEq (const EqExpr &) |
| virtual Action | visitNe (const NeExpr &) |
| virtual Action | visitUlt (const UltExpr &) |
| virtual Action | visitUle (const UleExpr &) |
| virtual Action | visitUgt (const UgtExpr &) |
| virtual Action | visitUge (const UgeExpr &) |
| virtual Action | visitSlt (const SltExpr &) |
| virtual Action | visitSle (const SleExpr &) |
| virtual Action | visitSgt (const SgtExpr &) |
| virtual Action | visitSge (const SgeExpr &) |
Private Member Functions | |
| Action | inspectRead (ref< Expr > hash, Expr::Width width, const ReadExpr &) |
Private Attributes | |
| std::vector< const ReadExpr * > & | reads |
| std::map< const ReadExpr *, std::pair< ref< Expr >, Expr::Width > > & | readInfo |
| bool | symbolic |
| bool | incompatible |
Definition at line 91 of file ArrayExprVisitor.h.
|
inline |
Definition at line 105 of file ArrayExprVisitor.h.
|
inline |
Definition at line 111 of file ArrayExprVisitor.h.
References symbolic.
Referenced by klee::ExprOptimizer::optimizeExpr().

|
private |
Definition at line 195 of file ArrayExprVisitor.cpp.
References klee::ExprVisitor::Action::doChildren(), klee::UpdateList::head, incompatible, klee::ReadExpr::index, klee::Array::isSymbolicArray(), readInfo, reads, klee::UpdateList::root, klee::ExprVisitor::Action::skipChildren(), symbolic, and klee::ReadExpr::updates.
Referenced by visitConcat(), and visitRead().


|
inline |
Definition at line 110 of file ArrayExprVisitor.h.
References incompatible.
Referenced by klee::ExprOptimizer::optimizeExpr().

|
overrideprotectedvirtual |
Reimplemented from klee::ExprVisitor.
Definition at line 183 of file ArrayExprVisitor.cpp.
References klee::ExprVisitor::Action::doChildren(), klee::ConcatExpr::getWidth(), klee::ArrayExprHelper::hasOrderedReads(), and inspectRead().

|
overrideprotectedvirtual |
Reimplemented from klee::ExprVisitor.
Definition at line 190 of file ArrayExprVisitor.cpp.
References klee::ReadExpr::getWidth(), and inspectRead().

|
private |
Definition at line 96 of file ArrayExprVisitor.h.
Referenced by inspectRead(), and isIncompatible().
|
private |
Definition at line 94 of file ArrayExprVisitor.h.
Referenced by inspectRead().
|
private |
Definition at line 93 of file ArrayExprVisitor.h.
Referenced by inspectRead().
|
private |
Definition at line 95 of file ArrayExprVisitor.h.
Referenced by containsSymbolic(), and inspectRead().