mirror of
https://github.com/RPCSX/llvm.git
synced 2024-11-26 05:00:26 +00:00
rename some methods and add some new methods for dealing with the globals list
in a DSNode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20701 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
1cee779cec
commit
a4c1b5f3e6
@ -285,11 +285,28 @@ public:
|
||||
void addGlobal(GlobalValue *GV);
|
||||
void mergeGlobals(const std::vector<GlobalValue*> &RHS);
|
||||
void clearGlobals() { std::vector<GlobalValue*>().swap(Globals); }
|
||||
const std::vector<GlobalValue*> &getGlobals() const { return Globals; }
|
||||
|
||||
typedef std::vector<GlobalValue*>::const_iterator global_iterator;
|
||||
global_iterator global_begin() const { return Globals.begin(); }
|
||||
global_iterator global_end() const { return Globals.end(); }
|
||||
/// getGlobalsList - Return the set of global leaders that are represented by
|
||||
/// this node. Note that globals that are in this equivalence class but are
|
||||
/// not leaders are not returned: for that, use addFullGlobalsList().
|
||||
const std::vector<GlobalValue*> &getGlobalsList() const { return Globals; }
|
||||
|
||||
/// addFullGlobalsList - Compute the full set of global values that are
|
||||
/// represented by this node. Unlike getGlobalsList(), this requires fair
|
||||
/// amount of work to compute, so don't treat this method call as free.
|
||||
void addFullGlobalsList(std::vector<GlobalValue*> &List) const;
|
||||
|
||||
/// addFullFunctionList - Identical to addFullGlobalsList, but only return the
|
||||
/// functions in the full list.
|
||||
void addFullFunctionList(std::vector<Function*> &List) const;
|
||||
|
||||
/// globals_iterator/begin/end - Provide iteration methods over the global
|
||||
/// value leaders set that is merged into this node. Like the getGlobalsList
|
||||
/// method, these iterators do not return globals that are part of the
|
||||
/// equivalence classes for globals in this node, but aren't leaders.
|
||||
typedef std::vector<GlobalValue*>::const_iterator globals_iterator;
|
||||
globals_iterator globals_begin() const { return Globals.begin(); }
|
||||
globals_iterator globals_end() const { return Globals.end(); }
|
||||
|
||||
|
||||
/// maskNodeTypes - Apply a mask to the node types bitfield.
|
||||
|
Loading…
Reference in New Issue
Block a user