diff options
author | Evan Cheng <evan.cheng@apple.com> | 2006-06-29 23:57:05 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2006-06-29 23:57:05 +0000 |
commit | d19938834b58240ac339fe93cda7d9b5fca415f6 (patch) | |
tree | 2ecc2f2d08f91481d90fbe85d3a0072da4d984b3 /llvm/lib | |
parent | 65e28b3186f35be77168e3fbe4432f2d1399e70c (diff) | |
download | bcm5719-llvm-d19938834b58240ac339fe93cda7d9b5fca415f6.tar.gz bcm5719-llvm-d19938834b58240ac339fe93cda7d9b5fca415f6.zip |
Ugly hack! Add helper functions InsertInFlightSetEntry and
RemoveInFlightSetEntry. They are used in place of direct set operators to
reduce instruction selection function stack size.
llvm-svn: 28987
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp b/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp index f0c61e77a94..13f0c491aa9 100644 --- a/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp @@ -3099,3 +3099,17 @@ void SelectionDAG::InsertISelMapEntry(std::map<SDOperand, SDOperand> &Map, Map.insert(std::make_pair(SDOperand(Key, KeyResNo), SDOperand(Element, ElementResNo))); } + +/// InsertInFlightSetEntry - A helper function to insert a SDNode* to a +/// SDNode* set. This is added to avoid the set insertion operator from being +/// inlined. +void SelectionDAG::InsertInFlightSetEntry(std::set<SDNode*> &Set, SDNode *N) { + Set.insert(N); +} + +/// RemoveInFlightSetEntry - A helper function to remove a SDNode* from a +/// SDNode* set. This is added to avoid the set removal operator from being +/// inlined. +void SelectionDAG::RemoveInFlightSetEntry(std::set<SDNode*> &Set, SDNode *N) { + Set.erase(N); +} |