LLVM 20.0.0git
Macros | Functions | Variables
ADCE.cpp File Reference
#include "llvm/Transforms/Scalar/ADCE.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/DepthFirstIterator.h"
#include "llvm/ADT/GraphTraits.h"
#include "llvm/ADT/MapVector.h"
#include "llvm/ADT/PostOrderIterator.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/Analysis/DomTreeUpdater.h"
#include "llvm/Analysis/GlobalsModRef.h"
#include "llvm/Analysis/IteratedDominanceFrontier.h"
#include "llvm/Analysis/MemorySSA.h"
#include "llvm/Analysis/PostDominators.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/CFG.h"
#include "llvm/IR/DebugInfo.h"
#include "llvm/IR/DebugInfoMetadata.h"
#include "llvm/IR/DebugLoc.h"
#include "llvm/IR/Dominators.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/InstIterator.h"
#include "llvm/IR/Instruction.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/PassManager.h"
#include "llvm/IR/Use.h"
#include "llvm/IR/Value.h"
#include "llvm/ProfileData/InstrProf.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Transforms/Utils/Local.h"
#include <cassert>
#include <cstddef>
#include <utility>

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "adce"
 

Functions

 STATISTIC (NumRemoved, "Number of instructions removed")
 
 STATISTIC (NumBranchesRemoved, "Number of branch instructions removed")
 
static bool isUnconditionalBranch (Instruction *Term)
 

Variables

static cl::opt< boolRemoveControlFlowFlag ("adce-remove-control-flow", cl::init(true), cl::Hidden)
 
static cl::opt< boolRemoveLoops ("adce-remove-loops", cl::init(false), cl::Hidden)
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "adce"

Definition at line 58 of file ADCE.cpp.

Function Documentation

◆ isUnconditionalBranch()

static bool isUnconditionalBranch ( Instruction Term)
static

Definition at line 215 of file ADCE.cpp.

◆ STATISTIC() [1/2]

STATISTIC ( NumBranchesRemoved  ,
"Number of branch instructions removed"   
)

◆ STATISTIC() [2/2]

STATISTIC ( NumRemoved  ,
"Number of instructions removed"   
)

Variable Documentation

◆ RemoveControlFlowFlag

cl::opt< bool > RemoveControlFlowFlag("adce-remove-control-flow", cl::init(true), cl::Hidden) ( "adce-remove-control-flow"  ,
cl::init(true ,
cl::Hidden   
)
static

◆ RemoveLoops

cl::opt< bool > RemoveLoops("adce-remove-loops", cl::init(false), cl::Hidden) ( "adce-remove-loops"  ,
cl::init(false)  ,
cl::Hidden   
)
static