src/share/vm/opto/graphKit.cpp

changeset 4315
2aff40cb4703
parent 4313
beebba0acc11
child 4357
ad5dd04754ee
equal deleted inserted replaced
4314:2cd5e15048e6 4315:2aff40cb4703
151 // Set _map to NULL, signalling a stop to further bytecode execution. 151 // Set _map to NULL, signalling a stop to further bytecode execution.
152 // First smash the current map's control to a constant, to mark it dead. 152 // First smash the current map's control to a constant, to mark it dead.
153 void GraphKit::stop_and_kill_map() { 153 void GraphKit::stop_and_kill_map() {
154 SafePointNode* dead_map = stop(); 154 SafePointNode* dead_map = stop();
155 if (dead_map != NULL) { 155 if (dead_map != NULL) {
156 dead_map->disconnect_inputs(NULL); // Mark the map as killed. 156 dead_map->disconnect_inputs(NULL, C); // Mark the map as killed.
157 assert(dead_map->is_killed(), "must be so marked"); 157 assert(dead_map->is_killed(), "must be so marked");
158 } 158 }
159 } 159 }
160 160
161 161
1809 C->gvn_replace_by(callprojs.exobj, ex_oop); 1809 C->gvn_replace_by(callprojs.exobj, ex_oop);
1810 } 1810 }
1811 } 1811 }
1812 1812
1813 // Disconnect the call from the graph 1813 // Disconnect the call from the graph
1814 call->disconnect_inputs(NULL); 1814 call->disconnect_inputs(NULL, C);
1815 C->gvn_replace_by(call, C->top()); 1815 C->gvn_replace_by(call, C->top());
1816 1816
1817 // Clean up any MergeMems that feed other MergeMems since the 1817 // Clean up any MergeMems that feed other MergeMems since the
1818 // optimizer doesn't like that. 1818 // optimizer doesn't like that.
1819 if (final_mem->is_MergeMem()) { 1819 if (final_mem->is_MergeMem()) {

mercurial