Static Value-Flow Analysis
Loading...
Searching...
No Matches
Public Member Functions | Static Public Attributes | List of all members
SVF::MergeFunctionRets Class Reference

#include <BreakConstantExpr.h>

Inheritance diagram for SVF::MergeFunctionRets:

Public Member Functions

 MergeFunctionRets ()
 
llvm::StringRef getPassName () const
 
virtual bool runOnModule (Module &M)
 
void UnifyFunctionExit (Module &module)
 
UnifyFunctionExitNodesgetUnifyExit (const Function &fn)
 Get Unified Exit basic block node.
 

Static Public Attributes

static char ID = 0
 

Detailed Description

Definition at line 53 of file BreakConstantExpr.h.

Constructor & Destructor Documentation

◆ MergeFunctionRets()

SVF::MergeFunctionRets::MergeFunctionRets ( )
inline

Definition at line 62 of file BreakConstantExpr.h.

62: ModulePass(ID) {}
llvm::ModulePass ModulePass
Definition BasicTypes.h:73

Member Function Documentation

◆ getPassName()

llvm::StringRef SVF::MergeFunctionRets::getPassName ( ) const
inline

Definition at line 63 of file BreakConstantExpr.h.

64 {
65 return "unify function exit into one dummy exit basic block";
66 }

◆ getUnifyExit()

UnifyFunctionExitNodes * SVF::MergeFunctionRets::getUnifyExit ( const Function fn)
inline

Get Unified Exit basic block node.

Definition at line 84 of file BreakConstantExpr.h.

85 {
86 assert(!fn.isDeclaration() && "external function does not have DF");
87 return &getAnalysis<UnifyFunctionExitNodes>(const_cast<Function&>(fn));
88 }
llvm::Function Function
Definition BasicTypes.h:85
llvm::IRBuilder IRBuilder
Definition BasicTypes.h:74

◆ runOnModule()

virtual bool SVF::MergeFunctionRets::runOnModule ( Module M)
inlinevirtual

Definition at line 67 of file BreakConstantExpr.h.

68 {
70 return true;
71 }
void UnifyFunctionExit(Module &module)

◆ UnifyFunctionExit()

void SVF::MergeFunctionRets::UnifyFunctionExit ( Module module)
inline

Definition at line 72 of file BreakConstantExpr.h.

73 {
74 for (Module::const_iterator iter = module.begin(), eiter = module.end();
75 iter != eiter; ++iter)
76 {
77 const Function& fun = *iter;
78 if(fun.isDeclaration())
79 continue;
80 getUnifyExit(fun)->runOnFunction(const_cast<Function&>(fun));
81 }
82 }
UnifyFunctionExitNodes * getUnifyExit(const Function &fn)
Get Unified Exit basic block node.

Member Data Documentation

◆ ID

char MergeFunctionRets::ID = 0
static

Definition at line 61 of file BreakConstantExpr.h.


The documentation for this class was generated from the following files: