LLVM  15.0.0git
Classes | Namespaces | Typedefs | Enumerations
JumpThreading.h File Reference
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/DenseSet.h"
#include "llvm/ADT/SmallSet.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/Analysis/BlockFrequencyInfo.h"
#include "llvm/Analysis/BranchProbabilityInfo.h"
#include "llvm/IR/ValueHandle.h"
#include <utility>
Include dependency graph for JumpThreading.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  llvm::JumpThreadingPass
 This pass performs 'jump threading', which looks at blocks that have multiple predecessors and multiple successors. More...
 

Namespaces

 llvm
 This is an optimization pass for GlobalISel generic memory operations.
 
 llvm::jumpthreading
 A private "module" namespace for types and utilities used by JumpThreading.
 

Typedefs

using llvm::jumpthreading::PredValueInfo = SmallVectorImpl< std::pair< Constant *, BasicBlock * > >
 
using llvm::jumpthreading::PredValueInfoTy = SmallVector< std::pair< Constant *, BasicBlock * >, 8 >
 

Enumerations

enum  llvm::jumpthreading::ConstantPreference { llvm::jumpthreading::WantInteger, llvm::jumpthreading::WantBlockAddress }
 

Detailed Description

See the comments on JumpThreadingPass.

Definition in file JumpThreading.h.