Mercurial > hg > truffle
comparison src/share/vm/opto/output.cpp @ 6804:e626685e9f6c
7193318: C2: remove number of inputs requirement from Node's new operator
Summary: Deleted placement new operator of Node - node(size_t, Compile *, int).
Reviewed-by: kvn, twisti
Contributed-by: bharadwaj.yadavalli@oracle.com
author | kvn |
---|---|
date | Thu, 27 Sep 2012 09:38:42 -0700 |
parents | 137868b7aa6f |
children | e522a00b91aa 2aff40cb4703 |
comparison
equal
deleted
inserted
replaced
6803:06f52c4d0e18 | 6804:e626685e9f6c |
---|---|
263 | 263 |
264 | 264 |
265 Node* Compile::call_zap_node(MachSafePointNode* node_to_check, int block_no) { | 265 Node* Compile::call_zap_node(MachSafePointNode* node_to_check, int block_no) { |
266 const TypeFunc *tf = OptoRuntime::zap_dead_locals_Type(); | 266 const TypeFunc *tf = OptoRuntime::zap_dead_locals_Type(); |
267 CallStaticJavaNode* ideal_node = | 267 CallStaticJavaNode* ideal_node = |
268 new (this, tf->domain()->cnt()) CallStaticJavaNode( tf, | 268 new (this) CallStaticJavaNode( tf, |
269 OptoRuntime::zap_dead_locals_stub(_method->flags().is_native()), | 269 OptoRuntime::zap_dead_locals_stub(_method->flags().is_native()), |
270 "call zap dead locals stub", 0, TypePtr::BOTTOM); | 270 "call zap dead locals stub", 0, TypePtr::BOTTOM); |
271 // We need to copy the OopMap from the site we're zapping at. | 271 // We need to copy the OopMap from the site we're zapping at. |
272 // We have to make a copy, because the zap site might not be | 272 // We have to make a copy, because the zap site might not be |
273 // a call site, and zap_dead is a call site. | 273 // a call site, and zap_dead is a call site. |
274 OopMap* clone = node_to_check->oop_map()->deep_copy(); | 274 OopMap* clone = node_to_check->oop_map()->deep_copy(); |
275 | 275 |
2682 if( pinch->Opcode() != Op_Node ) { // Or later-def/kill as pinch-point? | 2682 if( pinch->Opcode() != Op_Node ) { // Or later-def/kill as pinch-point? |
2683 later_def = pinch; // Must be def/kill as optimistic pinch-point | 2683 later_def = pinch; // Must be def/kill as optimistic pinch-point |
2684 if ( _pinch_free_list.size() > 0) { | 2684 if ( _pinch_free_list.size() > 0) { |
2685 pinch = _pinch_free_list.pop(); | 2685 pinch = _pinch_free_list.pop(); |
2686 } else { | 2686 } else { |
2687 pinch = new (_cfg->C, 1) Node(1); // Pinch point to-be | 2687 pinch = new (_cfg->C) Node(1); // Pinch point to-be |
2688 } | 2688 } |
2689 if (pinch->_idx >= _regalloc->node_regs_max_index()) { | 2689 if (pinch->_idx >= _regalloc->node_regs_max_index()) { |
2690 _cfg->C->record_method_not_compilable("too many D-U pinch points"); | 2690 _cfg->C->record_method_not_compilable("too many D-U pinch points"); |
2691 return; | 2691 return; |
2692 } | 2692 } |