src/share/vm/opto/machnode.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File 6829187 Sdiff src/share/vm/opto

src/share/vm/opto/machnode.cpp

Print this page
rev 1082 : [mq]: indy.compiler.patch


 619 }
 620 
 621 
 622 //------------------------------Registers--------------------------------------
 623 const RegMask &MachCallNode::in_RegMask( uint idx ) const {
 624   // Values in the domain use the users calling convention, embodied in the
 625   // _in_rms array of RegMasks.
 626   if (idx < tf()->domain()->cnt())  return _in_rms[idx];
 627   // Values outside the domain represent debug info
 628   return *Compile::current()->matcher()->idealreg2debugmask[in(idx)->ideal_reg()];
 629 }
 630 
 631 //=============================================================================
 632 uint MachCallJavaNode::size_of() const { return sizeof(*this); }
 633 uint MachCallJavaNode::cmp( const Node &n ) const {
 634   MachCallJavaNode &call = (MachCallJavaNode&)n;
 635   return MachCallNode::cmp(call) && _method->equals(call._method);
 636 }
 637 #ifndef PRODUCT
 638 void MachCallJavaNode::dump_spec(outputStream *st) const {
 639   if( _method ) {


 640     _method->print_short_name(st);
 641     st->print(" ");
 642   }
 643   MachCallNode::dump_spec(st);
 644 }
 645 #endif
 646 











 647 //=============================================================================
 648 uint MachCallStaticJavaNode::size_of() const { return sizeof(*this); }
 649 uint MachCallStaticJavaNode::cmp( const Node &n ) const {
 650   MachCallStaticJavaNode &call = (MachCallStaticJavaNode&)n;
 651   return MachCallJavaNode::cmp(call) && _name == call._name;
 652 }
 653 
 654 //----------------------------uncommon_trap_request----------------------------
 655 // If this is an uncommon trap, return the request code, else zero.
 656 int MachCallStaticJavaNode::uncommon_trap_request() const {
 657   if (_name != NULL && !strcmp(_name, "uncommon_trap")) {
 658     return CallStaticJavaNode::extract_uncommon_trap_request(this);
 659   }
 660   return 0;
 661 }
 662 
 663 #ifndef PRODUCT
 664 // Helper for summarizing uncommon_trap arguments.
 665 void MachCallStaticJavaNode::dump_trap_args(outputStream *st) const {
 666   int trap_req = uncommon_trap_request();




 619 }
 620 
 621 
 622 //------------------------------Registers--------------------------------------
 623 const RegMask &MachCallNode::in_RegMask( uint idx ) const {
 624   // Values in the domain use the users calling convention, embodied in the
 625   // _in_rms array of RegMasks.
 626   if (idx < tf()->domain()->cnt())  return _in_rms[idx];
 627   // Values outside the domain represent debug info
 628   return *Compile::current()->matcher()->idealreg2debugmask[in(idx)->ideal_reg()];
 629 }
 630 
 631 //=============================================================================
 632 uint MachCallJavaNode::size_of() const { return sizeof(*this); }
 633 uint MachCallJavaNode::cmp( const Node &n ) const {
 634   MachCallJavaNode &call = (MachCallJavaNode&)n;
 635   return MachCallNode::cmp(call) && _method->equals(call._method);
 636 }
 637 #ifndef PRODUCT
 638 void MachCallJavaNode::dump_spec(outputStream *st) const {
 639   if (_method_handle_invoke)
 640     st->print("MethodHandle ");
 641   if (_method) {
 642     _method->print_short_name(st);
 643     st->print(" ");
 644   }
 645   MachCallNode::dump_spec(st);
 646 }
 647 #endif
 648 
 649 //------------------------------Registers--------------------------------------
 650 const RegMask &MachCallJavaNode::in_RegMask(uint idx) const {
 651   // Values in the domain use the users calling convention, embodied in the
 652   // _in_rms array of RegMasks.
 653   if (idx < tf()->domain()->cnt())  return _in_rms[idx];
 654   // Values outside the domain represent debug info
 655   Matcher* m = Compile::current()->matcher();
 656   RegMask** debugmask = _method_handle_invoke ? m->idealreg2mhdebugmask : m->idealreg2debugmask;
 657   return *debugmask[in(idx)->ideal_reg()];
 658 }
 659 
 660 //=============================================================================
 661 uint MachCallStaticJavaNode::size_of() const { return sizeof(*this); }
 662 uint MachCallStaticJavaNode::cmp( const Node &n ) const {
 663   MachCallStaticJavaNode &call = (MachCallStaticJavaNode&)n;
 664   return MachCallJavaNode::cmp(call) && _name == call._name;
 665 }
 666 
 667 //----------------------------uncommon_trap_request----------------------------
 668 // If this is an uncommon trap, return the request code, else zero.
 669 int MachCallStaticJavaNode::uncommon_trap_request() const {
 670   if (_name != NULL && !strcmp(_name, "uncommon_trap")) {
 671     return CallStaticJavaNode::extract_uncommon_trap_request(this);
 672   }
 673   return 0;
 674 }
 675 
 676 #ifndef PRODUCT
 677 // Helper for summarizing uncommon_trap arguments.
 678 void MachCallStaticJavaNode::dump_trap_args(outputStream *st) const {
 679   int trap_req = uncommon_trap_request();


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