src/share/vm/opto/callGenerator.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hotspot Sdiff src/share/vm/opto

src/share/vm/opto/callGenerator.hpp

Print this page
rev 6135 : [mq]: logcompilation-reviews2


  67   virtual bool      is_predicted() const        { return false; }
  68   // is_trap: Does not return to the caller.  (E.g., uncommon trap.)
  69   virtual bool      is_trap() const             { return false; }
  70   // does_virtual_dispatch: Should try inlining as normal method first.
  71   virtual bool      does_virtual_dispatch() const     { return false; }
  72 
  73   // is_late_inline: supports conversion of call into an inline
  74   virtual bool      is_late_inline() const      { return false; }
  75   // same but for method handle calls
  76   virtual bool      is_mh_late_inline() const   { return false; }
  77   virtual bool      is_string_late_inline() const{ return false; }
  78 
  79   // for method handle calls: have we tried inlinining the call already?
  80   virtual bool      already_attempted() const   { ShouldNotReachHere(); return false; }
  81 
  82   // Replace the call with an inline version of the code
  83   virtual void do_late_inline() { ShouldNotReachHere(); }
  84 
  85   virtual CallStaticJavaNode* call_node() const { ShouldNotReachHere(); return NULL; }
  86 



  87   // Note:  It is possible for a CG to be both inline and virtual.
  88   // (The hashCode intrinsic does a vtable check and an inlined fast path.)
  89 
  90   // Utilities:
  91   const TypeFunc*   tf() const;
  92 
  93   // The given jvms has state and arguments for a call to my method.
  94   // Edges after jvms->argoff() carry all (pre-popped) argument values.
  95   //
  96   // Update the map with state and return values (if any) and return it.
  97   // The return values (0, 1, or 2) must be pushed on the map's stack,
  98   // and the sp of the jvms incremented accordingly.
  99   //
 100   // The jvms is returned on success.  Alternatively, a copy of the
 101   // given jvms, suitably updated, may be returned, in which case the
 102   // caller should discard the original jvms.
 103   //
 104   // The non-Parm edges of the returned map will contain updated global state,
 105   // and one or two edges before jvms->sp() will carry any return values.
 106   // Other map edges may contain locals or monitors, and should not




  67   virtual bool      is_predicted() const        { return false; }
  68   // is_trap: Does not return to the caller.  (E.g., uncommon trap.)
  69   virtual bool      is_trap() const             { return false; }
  70   // does_virtual_dispatch: Should try inlining as normal method first.
  71   virtual bool      does_virtual_dispatch() const     { return false; }
  72 
  73   // is_late_inline: supports conversion of call into an inline
  74   virtual bool      is_late_inline() const      { return false; }
  75   // same but for method handle calls
  76   virtual bool      is_mh_late_inline() const   { return false; }
  77   virtual bool      is_string_late_inline() const{ return false; }
  78 
  79   // for method handle calls: have we tried inlinining the call already?
  80   virtual bool      already_attempted() const   { ShouldNotReachHere(); return false; }
  81 
  82   // Replace the call with an inline version of the code
  83   virtual void do_late_inline() { ShouldNotReachHere(); }
  84 
  85   virtual CallStaticJavaNode* call_node() const { ShouldNotReachHere(); return NULL; }
  86 
  87   virtual void set_unique_id(jlong id)          { fatal("unique id only for late inlines"); };
  88   virtual jlong unique_id() const               { fatal("unique id only for late inlines"); return 0; };
  89 
  90   // Note:  It is possible for a CG to be both inline and virtual.
  91   // (The hashCode intrinsic does a vtable check and an inlined fast path.)
  92 
  93   // Utilities:
  94   const TypeFunc*   tf() const;
  95 
  96   // The given jvms has state and arguments for a call to my method.
  97   // Edges after jvms->argoff() carry all (pre-popped) argument values.
  98   //
  99   // Update the map with state and return values (if any) and return it.
 100   // The return values (0, 1, or 2) must be pushed on the map's stack,
 101   // and the sp of the jvms incremented accordingly.
 102   //
 103   // The jvms is returned on success.  Alternatively, a copy of the
 104   // given jvms, suitably updated, may be returned, in which case the
 105   // caller should discard the original jvms.
 106   //
 107   // The non-Parm edges of the returned map will contain updated global state,
 108   // and one or two edges before jvms->sp() will carry any return values.
 109   // Other map edges may contain locals or monitors, and should not


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