#include "clang/Analysis/CFG.h"
#include "clang/AST/ASTContext.h"
#include "clang/AST/Attr.h"
#include "clang/AST/CharUnits.h"
#include "clang/AST/DeclCXX.h"
#include "clang/AST/PrettyPrinter.h"
#include "clang/AST/StmtVisitor.h"
#include "clang/Basic/Builtins.h"
#include "llvm/ADT/DenseMap.h"
#include <memory>
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/Support/Allocator.h"
#include "llvm/Support/Format.h"
#include "llvm/Support/GraphWriter.h"
#include "llvm/Support/SaveAndRestore.h"
Go to the source code of this file.
|
| llvm |
| DominatorTree GraphTraits specialization so the DominatorTree can be iterable by generic graph iterators.
|
|
static void print_block |
( |
raw_ostream & |
OS, |
|
|
const CFG * |
cfg, |
|
|
const CFGBlock & |
B, |
|
|
StmtPrinterHelper & |
Helper, |
|
|
bool |
print_edges, |
|
|
bool |
ShowColors |
|
) |
| |
|
static |
Definition at line 4344 of file CFG.cpp.
References clang::CFGBlock::begin(), E, clang::CFGBlock::end(), clang::CFGBlock::getBlockID(), clang::CFG::getEntry(), clang::CXXCatchStmt::getExceptionDecl(), clang::CFG::getExit(), clang::CFG::getIndirectGotoBlock(), clang::CFGBlock::getLabel(), clang::ChooseExpr::getLHS(), clang::LabelStmt::getName(), clang::ChooseExpr::getRHS(), clang::CFGBlock::getTerminator(), clang::CFGBlock::hasNoReturnElement(), I, clang::CFGBlock::pred_begin(), clang::CFGBlock::pred_empty(), clang::CFGBlock::pred_end(), clang::CFGBlock::pred_size(), print_elem(), clang::CFGBlock::succ_begin(), clang::CFGBlock::succ_empty(), clang::CFGBlock::succ_end(), and clang::CFGBlock::succ_size().
Referenced by llvm::DOTGraphTraits< const CFG * >::getNodeLabel(), clang::CFGBlock::print(), and clang::CFG::print().
static void print_elem |
( |
raw_ostream & |
OS, |
|
|
StmtPrinterHelper & |
Helper, |
|
|
const CFGElement & |
E |
|
) |
| |
|
static |
Definition at line 4229 of file CFG.cpp.
References clang::CompoundStmt::body_rbegin(), clang::CompoundStmt::children(), clang::CXXCtorInitializer::getAnyMember(), clang::CXXDeleteExpr::getArgument(), clang::CFGElement::getAs(), clang::Type::getAs(), clang::Type::getAsCXXRecordDecl(), clang::CXXCtorInitializer::getBaseClass(), clang::Type::getBaseElementTypeUnsafe(), clang::CXXCtorInitializer::getInit(), clang::NamedDecl::getName(), clang::BinaryOperator::getOpcode(), clang::Type::getPointeeType(), clang::BinaryOperator::getRHS(), clang::StmtExpr::getSubStmt(), clang::TypeSourceInfo::getType(), clang::Expr::getType(), clang::CXXBaseSpecifier::getType(), clang::ValueDecl::getType(), clang::QualType::getTypePtr(), clang::CXXCtorInitializer::getTypeSourceInfo(), clang::CXXCtorInitializer::isBaseInitializer(), clang::CXXCtorInitializer::isDelegatingInitializer(), and clang::QualType::print().
Referenced by print_block().
StmtPrinterHelper* GraphHelper |
|
static |