|
LLVM 24.0.0git
|
#include "llvm/Transforms/Scalar/DFAJumpThreading.h"#include "ScalarOptions.h"#include "llvm/ADT/APInt.h"#include "llvm/ADT/DenseMap.h"#include "llvm/ADT/DenseSet.h"#include "llvm/ADT/SetVector.h"#include "llvm/ADT/Statistic.h"#include "llvm/ADT/StringExtras.h"#include "llvm/Analysis/AssumptionCache.h"#include "llvm/Analysis/CodeMetrics.h"#include "llvm/Analysis/DomTreeUpdater.h"#include "llvm/Analysis/LoopInfo.h"#include "llvm/Analysis/OptimizationRemarkEmitter.h"#include "llvm/Analysis/TargetTransformInfo.h"#include "llvm/IR/CFG.h"#include "llvm/IR/Constants.h"#include "llvm/IR/IntrinsicInst.h"#include "llvm/Support/Debug.h"#include "llvm/Transforms/Utils/Cloning.h"#include "llvm/Transforms/Utils/SSAUpdaterBulk.h"#include "llvm/Transforms/Utils/ValueMapper.h"#include <deque>Go to the source code of this file.
Macros | |
| #define | DEBUG_TYPE "dfa-jump-threading" |
Typedefs | |
| typedef std::deque< BasicBlock * > | PathType |
| typedef std::vector< PathType > | PathsType |
| typedef SmallPtrSet< const BasicBlock *, 8 > | VisitedBlocks |
| typedef std::vector< ClonedBlock > | CloneList |
| typedef DenseMap< BasicBlock *, CloneList > | DuplicateBlockMap |
| typedef MapVector< Instruction *, std::vector< Instruction * > > | DefMap |
Functions | |
| STATISTIC (NumTransforms, "Number of transformations done") | |
| STATISTIC (NumCloned, "Number of blocks cloned") | |
| STATISTIC (NumPaths, "Number of individual paths threaded") | |
| raw_ostream & | operator<< (raw_ostream &OS, const PathType &Path) |
| #define DEBUG_TYPE "dfa-jump-threading" |
Definition at line 89 of file DFAJumpThreading.cpp.
| typedef std::vector<ClonedBlock> CloneList |
Definition at line 342 of file DFAJumpThreading.cpp.
| typedef MapVector<Instruction *, std::vector<Instruction *> > DefMap |
Definition at line 351 of file DFAJumpThreading.cpp.
| typedef DenseMap<BasicBlock *, CloneList> DuplicateBlockMap |
Definition at line 347 of file DFAJumpThreading.cpp.
Definition at line 340 of file DFAJumpThreading.cpp.
| typedef std::deque<BasicBlock *> PathType |
Definition at line 339 of file DFAJumpThreading.cpp.
| typedef SmallPtrSet<const BasicBlock *, 8> VisitedBlocks |
Definition at line 341 of file DFAJumpThreading.cpp.
|
inline |
Definition at line 353 of file DFAJumpThreading.cpp.
References llvm::Value::getNameOrAsOperand(), llvm::join(), and llvm::map_range().
| STATISTIC | ( | NumCloned | , |
| "Number of blocks cloned" | ) |
| STATISTIC | ( | NumPaths | , |
| "Number of individual paths threaded" | ) |
| STATISTIC | ( | NumTransforms | , |
| "Number of transformations done" | ) |