diff options
author | Lorry Tar Creator <lorry-tar-importer@lorry> | 2017-06-27 06:07:23 +0000 |
---|---|---|
committer | Lorry Tar Creator <lorry-tar-importer@lorry> | 2017-06-27 06:07:23 +0000 |
commit | 1bf1084f2b10c3b47fd1a588d85d21ed0eb41d0c (patch) | |
tree | 46dcd36c86e7fbc6e5df36deb463b33e9967a6f7 /Source/JavaScriptCore/dfg/DFGVirtualRegisterAllocationPhase.cpp | |
parent | 32761a6cee1d0dee366b885b7b9c777e67885688 (diff) | |
download | WebKitGtk-tarball-master.tar.gz |
webkitgtk-2.16.5HEADwebkitgtk-2.16.5master
Diffstat (limited to 'Source/JavaScriptCore/dfg/DFGVirtualRegisterAllocationPhase.cpp')
-rw-r--r-- | Source/JavaScriptCore/dfg/DFGVirtualRegisterAllocationPhase.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/Source/JavaScriptCore/dfg/DFGVirtualRegisterAllocationPhase.cpp b/Source/JavaScriptCore/dfg/DFGVirtualRegisterAllocationPhase.cpp index 71d526159..7415acde4 100644 --- a/Source/JavaScriptCore/dfg/DFGVirtualRegisterAllocationPhase.cpp +++ b/Source/JavaScriptCore/dfg/DFGVirtualRegisterAllocationPhase.cpp @@ -30,7 +30,7 @@ #include "DFGGraph.h" #include "DFGScoreBoard.h" -#include "JSCellInlines.h" +#include "JSCInlines.h" #include "StackAlignment.h" #include <wtf/StdLibExtras.h> @@ -45,6 +45,8 @@ public: bool run() { + DFG_ASSERT(m_graph, nullptr, m_graph.m_form == ThreadedCPS); + ScoreBoard scoreBoard(m_graph.m_nextMachineLocal); scoreBoard.assertClear(); for (size_t blockIndex = 0; blockIndex < m_graph.numBlocks(); ++blockIndex) { @@ -53,9 +55,11 @@ public: continue; if (!block->isReachable) continue; - for (size_t indexInBlock = 0; indexInBlock < block->size(); ++indexInBlock) { - Node* node = block->at(indexInBlock); - + if (!ASSERT_DISABLED) { + // Force usage of highest-numbered virtual registers. + scoreBoard.sortFree(); + } + for (auto* node : *block) { if (!node->shouldGenerate()) continue; @@ -107,7 +111,6 @@ public: bool performVirtualRegisterAllocation(Graph& graph) { - SamplingRegion samplingRegion("DFG Virtual Register Allocation Phase"); return runPhase<VirtualRegisterAllocationPhase>(graph); } |