clang 22.0.0git
|
#include "clang/Analysis/Analyses/ThreadSafetyTraverse.h"
Public Member Functions | |
PrettyPrinter (bool V=false, bool C=true, bool CS=true) |
Static Public Member Functions | |
static void | print (const SExpr *E, StreamType &SS) |
Protected Member Functions | |
Self * | self () |
void | newline (StreamType &SS) |
unsigned | precedence (const SExpr *E) |
void | printBlockLabel (StreamType &SS, const BasicBlock *BB, int index) |
void | printSExpr (const SExpr *E, StreamType &SS, unsigned P, bool Sub=true) |
void | printNull (StreamType &SS) |
void | printFuture (const Future *E, StreamType &SS) |
void | printUndefined (const Undefined *E, StreamType &SS) |
void | printWildcard (const Wildcard *E, StreamType &SS) |
template<class T> | |
void | printLiteralT (const LiteralT< T > *E, StreamType &SS) |
void | printLiteralT (const LiteralT< uint8_t > *E, StreamType &SS) |
void | printLiteral (const Literal *E, StreamType &SS) |
void | printLiteralPtr (const LiteralPtr *E, StreamType &SS) |
void | printVariable (const Variable *V, StreamType &SS, bool IsVarDecl=false) |
void | printFunction (const Function *E, StreamType &SS, unsigned sugared=0) |
void | printSFunction (const SFunction *E, StreamType &SS) |
void | printCode (const Code *E, StreamType &SS) |
void | printField (const Field *E, StreamType &SS) |
void | printApply (const Apply *E, StreamType &SS, bool sugared=false) |
void | printSApply (const SApply *E, StreamType &SS) |
void | printProject (const Project *E, StreamType &SS) |
void | printCall (const Call *E, StreamType &SS) |
void | printAlloc (const Alloc *E, StreamType &SS) |
void | printLoad (const Load *E, StreamType &SS) |
void | printStore (const Store *E, StreamType &SS) |
void | printArrayIndex (const ArrayIndex *E, StreamType &SS) |
void | printArrayAdd (const ArrayAdd *E, StreamType &SS) |
void | printUnaryOp (const UnaryOp *E, StreamType &SS) |
void | printBinaryOp (const BinaryOp *E, StreamType &SS) |
void | printCast (const Cast *E, StreamType &SS) |
void | printSCFG (const SCFG *E, StreamType &SS) |
void | printBBInstr (const SExpr *E, StreamType &SS) |
void | printBasicBlock (const BasicBlock *E, StreamType &SS) |
void | printPhi (const Phi *E, StreamType &SS) |
void | printGoto (const Goto *E, StreamType &SS) |
void | printBranch (const Branch *E, StreamType &SS) |
void | printReturn (const Return *E, StreamType &SS) |
void | printIdentifier (const Identifier *E, StreamType &SS) |
void | printIfThenElse (const IfThenElse *E, StreamType &SS) |
void | printLet (const Let *E, StreamType &SS) |
Static Protected Attributes | |
static const unsigned | Prec_Atom = 0 |
static const unsigned | Prec_Postfix = 1 |
static const unsigned | Prec_Unary = 2 |
static const unsigned | Prec_Binary = 3 |
static const unsigned | Prec_Other = 4 |
static const unsigned | Prec_Decl = 5 |
static const unsigned | Prec_MAX = 6 |
Definition at line 399 of file ThreadSafetyTraverse.h.
|
inline |
Definition at line 411 of file ThreadSafetyTraverse.h.
|
inlineprotected |
Definition at line 422 of file ThreadSafetyTraverse.h.
Referenced by printBasicBlock(), printBBInstr(), and printSCFG().
|
inlineprotected |
Definition at line 436 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::SExpr::opcode(), Prec_Atom, Prec_Binary, Prec_Decl, Prec_MAX, Prec_Other, Prec_Postfix, and Prec_Unary.
Referenced by printSExpr().
|
inlinestatic |
Definition at line 414 of file ThreadSafetyTraverse.h.
References Prec_MAX, and clang::Self.
|
inlineprotected |
Definition at line 740 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::Alloc::dataType(), Prec_Other, and self().
|
inlineprotected |
Definition at line 679 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::Apply::arg(), clang::cast(), clang::threadSafety::til::Apply::fun(), clang::threadSafety::til::SExpr::opcode(), Prec_MAX, Prec_Postfix, printApply(), and self().
Referenced by printApply().
|
inlineprotected |
Definition at line 764 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::ArrayAdd::array(), clang::threadSafety::til::ArrayAdd::index(), Prec_Atom, Prec_Postfix, and self().
|
inlineprotected |
Definition at line 757 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::ArrayIndex::array(), clang::threadSafety::til::ArrayIndex::index(), Prec_MAX, Prec_Postfix, and self().
|
inlineprotected |
Definition at line 836 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::BasicBlock::arguments(), clang::threadSafety::til::BasicBlock::blockID(), clang::threadSafety::til::BasicBlock::instructions(), newline(), clang::threadSafety::til::BasicBlock::parent(), Prec_MAX, printBBInstr(), self(), clang::T, and clang::threadSafety::til::BasicBlock::terminator().
Referenced by printSCFG().
|
inlineprotected |
Definition at line 820 of file ThreadSafetyTraverse.h.
References clang::cast(), clang::threadSafety::til::SExpr::id(), newline(), clang::threadSafety::til::SExpr::opcode(), Prec_MAX, self(), and V.
Referenced by printBasicBlock().
|
inlineprotected |
|
inlineprotected |
Definition at line 479 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::BasicBlock::blockID().
Referenced by printBranch(), and printGoto().
|
inlineprotected |
Definition at line 877 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::Branch::condition(), clang::threadSafety::til::Branch::elseBlock(), Prec_MAX, printBlockLabel(), self(), and clang::threadSafety::til::Branch::thenBlock().
|
inlineprotected |
Definition at line 728 of file ThreadSafetyTraverse.h.
References clang::cast(), Prec_Postfix, self(), clang::T, and clang::threadSafety::til::Call::target().
|
inlineprotected |
Definition at line 781 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::CAST_extendNum, clang::threadSafety::til::CAST_none, clang::threadSafety::til::CAST_objToPtr, clang::threadSafety::til::CAST_toFloat, clang::threadSafety::til::CAST_toInt, clang::threadSafety::til::CAST_truncNum, clang::threadSafety::til::Cast::castOpcode(), clang::threadSafety::til::Cast::expr(), Prec_Unary, and self().
|
inlineprotected |
Definition at line 665 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::Code::body(), Prec_Decl, clang::threadSafety::til::Code::returnType(), and self().
|
inlineprotected |
Definition at line 672 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::Field::body(), Prec_Decl, clang::threadSafety::til::Field::range(), and self().
|
inlineprotected |
Definition at line 633 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::Function::body(), clang::cast(), clang::threadSafety::til::Variable::definition(), clang::threadSafety::til::SExpr::opcode(), Prec_Decl, Prec_MAX, self(), and clang::threadSafety::til::Function::variableDecl().
|
inlineprotected |
Definition at line 523 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::Future::maybeGetResult(), Prec_Atom, and self().
|
inlineprotected |
Definition at line 872 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::Goto::index(), printBlockLabel(), and clang::threadSafety::til::Goto::targetBlock().
|
inlineprotected |
Definition at line 891 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::Identifier::name().
|
inlineprotected |
Definition at line 895 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::IfThenElse::condition(), clang::threadSafety::til::IfThenElse::elseExpr(), Prec_MAX, Prec_Other, Prec_Unary, printSExpr(), and clang::threadSafety::til::IfThenElse::thenExpr().
|
inlineprotected |
Definition at line 912 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::Let::body(), clang::threadSafety::til::Variable::definition(), Prec_Decl, printSExpr(), printVariable(), and clang::threadSafety::til::Let::variableDecl().
|
inlineprotected |
Definition at line 544 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::Literal::as(), clang::threadSafety::til::ValueType::Base, clang::threadSafety::til::ValueType::BT_Bool, clang::threadSafety::til::ValueType::BT_Float, clang::threadSafety::til::ValueType::BT_Int, clang::threadSafety::til::ValueType::BT_Pointer, clang::threadSafety::til::ValueType::BT_String, clang::threadSafety::til::ValueType::BT_ValueRef, clang::threadSafety::til::ValueType::BT_Void, clang::threadSafety::til::Literal::clangExpr(), clang::threadSafety::getSourceLiteralString(), printLiteralT(), clang::threadSafety::til::ValueType::Signed, clang::threadSafety::til::ValueType::Size, clang::threadSafety::til::ValueType::ST_16, clang::threadSafety::til::ValueType::ST_32, clang::threadSafety::til::ValueType::ST_64, clang::threadSafety::til::ValueType::ST_8, and clang::threadSafety::til::Literal::valueType().
|
inlineprotected |
Definition at line 619 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::LiteralPtr::clangDecl().
|
inlineprotected |
Definition at line 536 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::LiteralT< T >::value().
Referenced by printLiteral().
|
inlineprotected |
Definition at line 540 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::LiteralT< T >::value().
|
inlineprotected |
Definition at line 745 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::Load::pointer(), Prec_Postfix, and self().
|
inlineprotected |
Definition at line 519 of file ThreadSafetyTraverse.h.
|
inlineprotected |
Definition at line 857 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::Phi::PH_SingleVal, Prec_MAX, self(), clang::threadSafety::til::Phi::status(), V, and clang::threadSafety::til::Phi::values().
|
inlineprotected |
Definition at line 702 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::Project::clangDecl(), clang::NamedDecl::getQualifiedNameAsString(), clang::isa(), clang::threadSafety::til::Project::isArrow(), Prec_Postfix, clang::threadSafety::til::Project::record(), self(), clang::threadSafety::til::Project::slotName(), V, and clang::threadSafety::til::Variable::VK_SFun.
|
inlineprotected |
Definition at line 886 of file ThreadSafetyTraverse.h.
References Prec_Other, clang::threadSafety::til::Return::returnValue(), and self().
|
inlineprotected |
Definition at line 693 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::SApply::arg(), clang::threadSafety::til::SApply::isDelegation(), Prec_MAX, Prec_Postfix, self(), and clang::threadSafety::til::SApply::sfun().
|
inlineprotected |
Definition at line 812 of file ThreadSafetyTraverse.h.
References newline(), and printBasicBlock().
|
inlineprotected |
Definition at line 492 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::SExpr::block(), clang::threadSafety::til::SExpr::id(), clang::threadSafety::til::SExpr::opcode(), Prec_MAX, precedence(), and self().
Referenced by printIfThenElse(), and printLet().
|
inlineprotected |
Definition at line 658 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::SFunction::body(), Prec_Decl, self(), and clang::threadSafety::til::SFunction::variableDecl().
|
inlineprotected |
Definition at line 751 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::Store::destination(), Prec_Other, self(), and clang::threadSafety::til::Store::source().
|
inlineprotected |
Definition at line 770 of file ThreadSafetyTraverse.h.
References clang::threadSafety::til::UnaryOp::expr(), clang::threadSafety::til::getUnaryOpcodeString(), Prec_Unary, self(), and clang::threadSafety::til::UnaryOp::unaryOpcode().
|
inlineprotected |
Definition at line 527 of file ThreadSafetyTraverse.h.
|
inlineprotected |
Definition at line 626 of file ThreadSafetyTraverse.h.
References V, and clang::threadSafety::til::Variable::VK_SFun.
Referenced by printLet().
|
inlineprotected |
Definition at line 531 of file ThreadSafetyTraverse.h.
|
inlineprotected |
Definition at line 420 of file ThreadSafetyTraverse.h.
References clang::Self.
Referenced by printAlloc(), printApply(), printArrayAdd(), printArrayIndex(), printBasicBlock(), printBBInstr(), printBinaryOp(), printBranch(), printCall(), printCast(), printCode(), printField(), printFunction(), printFuture(), printLoad(), printPhi(), printProject(), printReturn(), printSApply(), printSExpr(), printSFunction(), printStore(), and printUnaryOp().
|
staticprotected |
Definition at line 427 of file ThreadSafetyTraverse.h.
Referenced by precedence(), printArrayAdd(), and printFuture().
|
staticprotected |
Definition at line 430 of file ThreadSafetyTraverse.h.
Referenced by precedence(), and printBinaryOp().
|
staticprotected |
Definition at line 432 of file ThreadSafetyTraverse.h.
Referenced by precedence(), printCode(), printField(), printFunction(), printLet(), and printSFunction().
|
staticprotected |
Definition at line 433 of file ThreadSafetyTraverse.h.
Referenced by precedence(), print(), printApply(), printArrayIndex(), printBasicBlock(), printBBInstr(), printBranch(), printFunction(), printIfThenElse(), printPhi(), printSApply(), and printSExpr().
|
staticprotected |
Definition at line 431 of file ThreadSafetyTraverse.h.
Referenced by precedence(), printAlloc(), printIfThenElse(), printReturn(), and printStore().
|
staticprotected |
Definition at line 428 of file ThreadSafetyTraverse.h.
Referenced by precedence(), printApply(), printArrayAdd(), printArrayIndex(), printCall(), printLoad(), printProject(), and printSApply().
|
staticprotected |
Definition at line 429 of file ThreadSafetyTraverse.h.
Referenced by precedence(), printCast(), printIfThenElse(), and printUnaryOp().