mirror of
https://github.com/RPCSX/llvm.git
synced 2024-11-29 06:30:39 +00:00
* Eliminate boolean arguments in favor of using enums
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5420 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
394471f197
commit
381977d191
@ -137,15 +137,20 @@ public:
|
||||
// the scope of current analysis may have modified it), the 'Incomplete' flag
|
||||
// is added to the NodeType.
|
||||
//
|
||||
void markIncompleteNodes(bool markFormalArgs = true);
|
||||
enum MarkIncompleteFlags {
|
||||
MarkFormalArgs = 1, IgnoreFormalArgs = 0,
|
||||
};
|
||||
void markIncompleteNodes(unsigned Flags);
|
||||
|
||||
// removeDeadNodes - Use a more powerful reachability analysis to eliminate
|
||||
// subgraphs that are unreachable. This often occurs because the data
|
||||
// structure doesn't "escape" into it's caller, and thus should be eliminated
|
||||
// from the caller's graph entirely. This is only appropriate to use when
|
||||
// inlining graphs.
|
||||
// removeDeadNodes - Use a reachability analysis to eliminate subgraphs that
|
||||
// are unreachable. This often occurs because the data structure doesn't
|
||||
// "escape" into it's caller, and thus should be eliminated from the caller's
|
||||
// graph entirely. This is only appropriate to use when inlining graphs.
|
||||
//
|
||||
void removeDeadNodes();
|
||||
enum RemoveDeadNodesFlags {
|
||||
RemoveUnreachableGlobals = 1, KeepUnreachableGlobals = 0,
|
||||
};
|
||||
void removeDeadNodes(unsigned Flags);
|
||||
|
||||
// CloneFlags enum - Bits that may be passed into the cloneInto method to
|
||||
// specify how to clone the function graph.
|
||||
|
@ -137,15 +137,20 @@ public:
|
||||
// the scope of current analysis may have modified it), the 'Incomplete' flag
|
||||
// is added to the NodeType.
|
||||
//
|
||||
void markIncompleteNodes(bool markFormalArgs = true);
|
||||
enum MarkIncompleteFlags {
|
||||
MarkFormalArgs = 1, IgnoreFormalArgs = 0,
|
||||
};
|
||||
void markIncompleteNodes(unsigned Flags);
|
||||
|
||||
// removeDeadNodes - Use a more powerful reachability analysis to eliminate
|
||||
// subgraphs that are unreachable. This often occurs because the data
|
||||
// structure doesn't "escape" into it's caller, and thus should be eliminated
|
||||
// from the caller's graph entirely. This is only appropriate to use when
|
||||
// inlining graphs.
|
||||
// removeDeadNodes - Use a reachability analysis to eliminate subgraphs that
|
||||
// are unreachable. This often occurs because the data structure doesn't
|
||||
// "escape" into it's caller, and thus should be eliminated from the caller's
|
||||
// graph entirely. This is only appropriate to use when inlining graphs.
|
||||
//
|
||||
void removeDeadNodes();
|
||||
enum RemoveDeadNodesFlags {
|
||||
RemoveUnreachableGlobals = 1, KeepUnreachableGlobals = 0,
|
||||
};
|
||||
void removeDeadNodes(unsigned Flags);
|
||||
|
||||
// CloneFlags enum - Bits that may be passed into the cloneInto method to
|
||||
// specify how to clone the function graph.
|
||||
|
@ -175,7 +175,7 @@ DSGraph* FunctionModRefInfo::ResolveCallSiteModRefInfo(CallInst &CI,
|
||||
assert(0 && "See error message");
|
||||
|
||||
// Remove dead nodes aggressively to match the caller's original graph.
|
||||
Result->removeDeadNodes();
|
||||
Result->removeDeadNodes(DSGraph::KeepUnreachableGlobals);
|
||||
|
||||
// Step #4: Return the clone + the mapping (by ref)
|
||||
return Result;
|
||||
@ -393,7 +393,7 @@ FunctionModRefInfo& IPModRef::getFuncInfo(const Function& func,
|
||||
// The memory for this graph clone will be freed by FunctionModRefInfo.
|
||||
DSGraph* funcTDGraph =
|
||||
new DSGraph(getAnalysis<TDDataStructures>().getDSGraph(func));
|
||||
funcTDGraph->removeDeadNodes();
|
||||
funcTDGraph->removeDeadNodes(DSGraph::KeepUnreachableGlobals);
|
||||
|
||||
funcInfo = new FunctionModRefInfo(func, *this, funcTDGraph); //auto-insert
|
||||
funcInfo->computeModRef(func); // computes the mod/ref info
|
||||
|
@ -175,7 +175,7 @@ DSGraph* FunctionModRefInfo::ResolveCallSiteModRefInfo(CallInst &CI,
|
||||
assert(0 && "See error message");
|
||||
|
||||
// Remove dead nodes aggressively to match the caller's original graph.
|
||||
Result->removeDeadNodes();
|
||||
Result->removeDeadNodes(DSGraph::KeepUnreachableGlobals);
|
||||
|
||||
// Step #4: Return the clone + the mapping (by ref)
|
||||
return Result;
|
||||
@ -393,7 +393,7 @@ FunctionModRefInfo& IPModRef::getFuncInfo(const Function& func,
|
||||
// The memory for this graph clone will be freed by FunctionModRefInfo.
|
||||
DSGraph* funcTDGraph =
|
||||
new DSGraph(getAnalysis<TDDataStructures>().getDSGraph(func));
|
||||
funcTDGraph->removeDeadNodes();
|
||||
funcTDGraph->removeDeadNodes(DSGraph::KeepUnreachableGlobals);
|
||||
|
||||
funcInfo = new FunctionModRefInfo(func, *this, funcTDGraph); //auto-insert
|
||||
funcInfo->computeModRef(func); // computes the mod/ref info
|
||||
|
Loading…
Reference in New Issue
Block a user