comparison src/share/vm/opto/callnode.cpp @ 17791:ad3b94907eed

8030863: PPC64: (part 220): ConstantTableBase for calls between args and jvms Summary: Add ConstantTableBase node edge after parameters and before jvms. Adapt jvms offsets. Reviewed-by: kvn
author goetz
date Fri, 20 Dec 2013 13:51:14 +0100
parents 4cdf4f71177d
children abec000618bf
comparison
equal deleted inserted replaced
17790:5da8bb64b370 17791:ad3b94907eed
593 for (JVMState* p = this; p->_caller != NULL; p = p->_caller) { 593 for (JVMState* p = this; p->_caller != NULL; p = p->_caller) {
594 p->set_map(map); 594 p->set_map(map);
595 } 595 }
596 } 596 }
597 597
598 // Adapt offsets in in-array after adding or removing an edge.
599 // Prerequisite is that the JVMState is used by only one node.
600 void JVMState::adapt_position(int delta) {
601 for (JVMState* jvms = this; jvms != NULL; jvms = jvms->caller()) {
602 jvms->set_locoff(jvms->locoff() + delta);
603 jvms->set_stkoff(jvms->stkoff() + delta);
604 jvms->set_monoff(jvms->monoff() + delta);
605 jvms->set_scloff(jvms->scloff() + delta);
606 jvms->set_endoff(jvms->endoff() + delta);
607 }
608 }
609
598 //============================================================================= 610 //=============================================================================
599 uint CallNode::cmp( const Node &n ) const 611 uint CallNode::cmp( const Node &n ) const
600 { return _tf == ((CallNode&)n)._tf && _jvms == ((CallNode&)n)._jvms; } 612 { return _tf == ((CallNode&)n)._tf && _jvms == ((CallNode&)n)._jvms; }
601 #ifndef PRODUCT 613 #ifndef PRODUCT
602 void CallNode::dump_req(outputStream *st) const { 614 void CallNode::dump_req(outputStream *st) const {