LLVM  8.0.1
Classes | Namespaces | Macros | Typedefs | Functions | Variables
EarlyCSE.cpp File Reference
#include "llvm/Transforms/Scalar/EarlyCSE.h"
#include "llvm/ADT/DenseMapInfo.h"
#include "llvm/ADT/Hashing.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/ScopedHashTable.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/Analysis/AssumptionCache.h"
#include "llvm/Analysis/GlobalsModRef.h"
#include "llvm/Analysis/GuardUtils.h"
#include "llvm/Analysis/InstructionSimplify.h"
#include "llvm/Analysis/MemorySSA.h"
#include "llvm/Analysis/MemorySSAUpdater.h"
#include "llvm/Analysis/TargetLibraryInfo.h"
#include "llvm/Analysis/TargetTransformInfo.h"
#include "llvm/Transforms/Utils/Local.h"
#include "llvm/Analysis/ValueTracking.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/Dominators.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/InstrTypes.h"
#include "llvm/IR/Instruction.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/LLVMContext.h"
#include "llvm/IR/PassManager.h"
#include "llvm/IR/PatternMatch.h"
#include "llvm/IR/Type.h"
#include "llvm/IR/Use.h"
#include "llvm/IR/Value.h"
#include "llvm/Pass.h"
#include "llvm/Support/Allocator.h"
#include "llvm/Support/AtomicOrdering.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/DebugCounter.h"
#include "llvm/Support/RecyclingAllocator.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Transforms/Scalar.h"
#include "llvm/Transforms/Utils/GuardUtils.h"
#include <cassert>
#include <deque>
#include <memory>
#include <utility>
Include dependency graph for EarlyCSE.cpp:

Go to the source code of this file.

Classes

struct  llvm::DenseMapInfo< SimpleValue >
 
struct  llvm::DenseMapInfo< CallValue >
 

Namespaces

 llvm
 This class represents lattice values for constants.
 

Macros

#define DEBUG_TYPE   "early-cse"
 

Typedefs

using EarlyCSELegacyPass = EarlyCSELegacyCommonPass< false >
 

Functions

 STATISTIC (NumSimplify, "Number of instructions simplified or DCE'd")
 
 STATISTIC (NumCSE, "Number of instructions CSE'd")
 
 STATISTIC (NumCSECVP, "Number of compare instructions CVP'd")
 
 STATISTIC (NumCSELoad, "Number of load instructions CSE'd")
 
 STATISTIC (NumCSECall, "Number of call instructions CSE'd")
 
 STATISTIC (NumDSE, "Number of trivial dead stores removed")
 
 DEBUG_COUNTER (CSECounter, "early-cse", "Controls which instructions are removed")
 
 INITIALIZE_PASS_BEGIN (EarlyCSELegacyPass, "early-cse", "Early CSE", false, false) using EarlyCSEMemSSALegacyPass
 
 INITIALIZE_PASS_BEGIN (EarlyCSEMemSSALegacyPass, "early-cse-memssa", "Early CSE w/ MemorySSA", false, false) INITIALIZE_PASS_END(EarlyCSEMemSSALegacyPass
 

Variables

early cse memssa
 
early cse Early CSEMemorySSA
 
early cse Early CSEfalse
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "early-cse"

Definition at line 67 of file EarlyCSE.cpp.

Typedef Documentation

◆ EarlyCSELegacyPass

using EarlyCSELegacyPass = EarlyCSELegacyCommonPass<false>

Definition at line 1301 of file EarlyCSE.cpp.

Function Documentation

◆ DEBUG_COUNTER()

DEBUG_COUNTER ( CSECounter  ,
"early-cse ,
"Controls which instructions are removed"   
)

◆ INITIALIZE_PASS_BEGIN() [1/2]

INITIALIZE_PASS_BEGIN ( EarlyCSELegacyPass  ,
"early-cse ,
"Early CSE ,
false  ,
false   
)

◆ INITIALIZE_PASS_BEGIN() [2/2]

INITIALIZE_PASS_BEGIN ( EarlyCSEMemSSALegacyPass  ,
"early-cse-memssa ,
"Early CSE w/ MemorySSA ,
false  ,
false   
)

◆ STATISTIC() [1/6]

STATISTIC ( NumSimplify  ,
"Number of instructions simplified or DCE'd"   
)

◆ STATISTIC() [2/6]

STATISTIC ( NumCSE  ,
"Number of instructions CSE'd"   
)

◆ STATISTIC() [3/6]

STATISTIC ( NumCSECVP  ,
"Number of compare instructions CVP'd"   
)

◆ STATISTIC() [4/6]

STATISTIC ( NumCSELoad  ,
"Number of load instructions CSE'd"   
)

◆ STATISTIC() [5/6]

STATISTIC ( NumCSECall  ,
"Number of call instructions CSE'd"   
)

◆ STATISTIC() [6/6]

STATISTIC ( NumDSE  ,
"Number of trivial dead stores removed"   
)

Variable Documentation

◆ false

early cse Early CSE w false

Definition at line 1334 of file EarlyCSE.cpp.

◆ MemorySSA

early cse Early CSE w MemorySSA

Definition at line 1334 of file EarlyCSE.cpp.

Referenced by llvm::MemorySSAWrapperPass::runOnFunction().

◆ memssa

early cse memssa

Definition at line 1334 of file EarlyCSE.cpp.