LLVM API Documentation

ADCE.cpp File Reference

#include "llvm/Transforms/Scalar.h"
#include "llvm/Constants.h"
#include "llvm/Instructions.h"
#include "llvm/Analysis/AliasAnalysis.h"
#include "llvm/Analysis/PostDominators.h"
#include "llvm/Support/CFG.h"
#include "llvm/Transforms/Utils/BasicBlockUtils.h"
#include "llvm/Transforms/Utils/Local.h"
#include "llvm/Transforms/Utils/UnifyFunctionExitNodes.h"
#include "llvm/Support/Debug.h"
#include "llvm/ADT/DepthFirstIterator.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/ADT/STLExtras.h"
#include <algorithm>
#include <iostream>

Include dependency graph for ADCE.cpp:

Go to the source code of this file.

Functions

static IncludeFile X ((void *) createUnifyFunctionExitNodesPass)
FunctionPassllvm::createAggressiveDCEPass ()

Variables

Statistic NumBlockRemoved ("adce","Number of basic blocks removed")
Statistic NumInstRemoved ("adce","Number of instructions removed")
Statistic NumCallRemoved ("adce","Number of calls and invokes removed")
FunctionFunc
std::vector< Instruction * > WorkList
std::set< Instruction * > LiveSet
RegisterOpt< ADCE > X ("adce","Aggressive Dead Code Elimination")


Function Documentation

static IncludeFile X ( (void *)  createUnifyFunctionExitNodesPass  )  [static]


Variable Documentation

Function* Func

Definition at line 47 of file ADCE.cpp.

Referenced by llvm::CallInst::CallInst(), createSlotMachine(), llvm::BytecodeReader::ParseAllFunctionBodies(), llvm::BytecodeReader::ParseFunction(), llvm::BytecodeReader::ParseFunctionLazily(), and llvm::BytecodeReader::ParseModuleGlobalInfo().

std::set<Instruction*> LiveSet

Definition at line 49 of file ADCE.cpp.

Statistic NumBlockRemoved("adce","Number of basic blocks removed") [static]

Statistic NumCallRemoved("adce","Number of calls and invokes removed") [static]

Statistic NumInstRemoved("adce","Number of instructions removed") [static]

std::vector<Instruction*> WorkList

Definition at line 48 of file ADCE.cpp.

RegisterOpt<ADCE> X("adce","Aggressive Dead Code Elimination") [static]