LLVM  6.0.0svn
Macros | Functions | Variables
FlattenCFGPass.cpp File Reference
#include "llvm/Analysis/AliasAnalysis.h"
#include "llvm/IR/CFG.h"
#include "llvm/Pass.h"
#include "llvm/Transforms/Scalar.h"
#include "llvm/Transforms/Utils/Local.h"
Include dependency graph for FlattenCFGPass.cpp:

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "flattencfg"
 

Functions

 INITIALIZE_PASS_BEGIN (FlattenCFGPass, "flattencfg", "Flatten the CFG", false, false) INITIALIZE_PASS_END(FlattenCFGPass
 
static bool iterativelyFlattenCFG (Function &F, AliasAnalysis *AA)
 iterativelyFlattenCFG - Call FlattenCFG on all the blocks in the function, iterating until no more changes are made. More...
 

Variables

 flattencfg
 
Flatten the CFG
 
Flatten the false
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "flattencfg"

Definition at line 21 of file FlattenCFGPass.cpp.

Function Documentation

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( FlattenCFGPass  ,
"flattencfg"  ,
"Flatten the CFG ,
false  ,
false   
)

◆ iterativelyFlattenCFG()

static bool iterativelyFlattenCFG ( Function F,
AliasAnalysis AA 
)
static

iterativelyFlattenCFG - Call FlattenCFG on all the blocks in the function, iterating until no more changes are made.

Definition at line 53 of file FlattenCFGPass.cpp.

References llvm::Function::begin(), llvm::Function::end(), F(), llvm::FlattenCFG(), and llvm::removeUnreachableBlocks().

Variable Documentation

◆ CFG

Flatten the CFG

◆ false

Flatten the false

Definition at line 45 of file FlattenCFGPass.cpp.

◆ flattencfg

flattencfg

Definition at line 45 of file FlattenCFGPass.cpp.