src/share/vm/opto/gcm.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File
*** old/src/share/vm/opto/gcm.cpp	Mon Sep 14 15:54:43 2015
--- new/src/share/vm/opto/gcm.cpp	Mon Sep 14 15:54:42 2015

*** 116,127 **** --- 116,127 ---- //------------------------------schedule_pinned_nodes-------------------------- // Set the basic block for Nodes pinned into blocks void PhaseCFG::schedule_pinned_nodes(VectorSet &visited) { ! // Allocate node stack of size C->unique()+8 to avoid frequent realloc ! GrowableArray <Node *> spstack(C->unique() + 8); ! // Allocate node stack of size C->live_nodes()+8 to avoid frequent realloc ! GrowableArray <Node *> spstack(C->live_nodes() + 8); spstack.push(_root); while (spstack.is_nonempty()) { Node* node = spstack.pop(); if (!visited.test_set(node->_idx)) { // Test node and flag it as visited if (node->pinned() && !has_block(node)) { // Pinned? Nail it down!
*** 1283,1293 **** --- 1283,1293 ---- // instructions are pinned into Blocks. Unpinned instructions can // appear in last block in which all their inputs occur. visited.Clear(); Node_List stack(arena); // Pre-grow the list ! stack.map((C->unique() >> 1) + 16, NULL); ! stack.map((C->live_nodes() >> 1) + 16, NULL); if (!schedule_early(visited, stack)) { // Bailout without retry C->record_method_not_compilable("early schedule failed"); return; }

src/share/vm/opto/gcm.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File