src/share/vm/opto/parse.hpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File 8028468 Sdiff src/share/vm/opto

src/share/vm/opto/parse.hpp

Print this page




 124   // The call_method is an optimized virtual method candidate otherwise.
 125   WarmCallInfo* ok_to_inline(ciMethod *call_method, JVMState* caller_jvms, ciCallProfile& profile, WarmCallInfo* wci, bool& should_delay);
 126 
 127   // Information about inlined method
 128   JVMState*   caller_jvms()       const { return _caller_jvms; }
 129   ciMethod   *method()            const { return _method; }
 130   int         caller_bci()        const { return _caller_jvms ? _caller_jvms->bci() : InvocationEntryBci; }
 131   uint        count_inline_bcs()  const { return _count_inline_bcs; }
 132   float       site_invoke_ratio() const { return _site_invoke_ratio; };
 133 
 134 #ifndef PRODUCT
 135 private:
 136   uint        _count_inlines;     // Count of inlined methods
 137 public:
 138   // Debug information collected during parse
 139   uint        count_inlines()     const { return _count_inlines; };
 140 #endif
 141   GrowableArray<InlineTree*> subtrees() { return _subtrees; }
 142 
 143   void print_value_on(outputStream* st) const PRODUCT_RETURN;







 144 };
 145 
 146 
 147 //-----------------------------------------------------------------------------
 148 //------------------------------Parse------------------------------------------
 149 // Parse bytecodes, build a Graph
 150 class Parse : public GraphKit {
 151  public:
 152   // Per-block information needed by the parser:
 153   class Block {
 154    private:
 155     ciTypeFlow::Block* _flow;
 156     int                _pred_count;     // how many predecessors in CFG?
 157     int                _preds_parsed;   // how many of these have been parsed?
 158     uint               _count;          // how many times executed?  Currently only set by _goto's
 159     bool               _is_parsed;      // has this block been parsed yet?
 160     bool               _is_handler;     // is this block an exception handler?
 161     bool               _has_merged_backedge; // does this block have merged backedge?
 162     SafePointNode*     _start_map;      // all values flowing into this block
 163     MethodLivenessResult _live_locals;  // lazily initialized liveness bitmap




 124   // The call_method is an optimized virtual method candidate otherwise.
 125   WarmCallInfo* ok_to_inline(ciMethod *call_method, JVMState* caller_jvms, ciCallProfile& profile, WarmCallInfo* wci, bool& should_delay);
 126 
 127   // Information about inlined method
 128   JVMState*   caller_jvms()       const { return _caller_jvms; }
 129   ciMethod   *method()            const { return _method; }
 130   int         caller_bci()        const { return _caller_jvms ? _caller_jvms->bci() : InvocationEntryBci; }
 131   uint        count_inline_bcs()  const { return _count_inline_bcs; }
 132   float       site_invoke_ratio() const { return _site_invoke_ratio; };
 133 
 134 #ifndef PRODUCT
 135 private:
 136   uint        _count_inlines;     // Count of inlined methods
 137 public:
 138   // Debug information collected during parse
 139   uint        count_inlines()     const { return _count_inlines; };
 140 #endif
 141   GrowableArray<InlineTree*> subtrees() { return _subtrees; }
 142 
 143   void print_value_on(outputStream* st) const PRODUCT_RETURN;
 144 
 145   bool        _forced_inline;     // Inlining was forced by CompilerOracle or ciReplay
 146   bool        forced_inline()     const { return _forced_inline; }
 147   // Count number of nodes in this subtree
 148   int         count() const;
 149   // Dump inlining replay data to the stream.
 150   void dump_replay_data(outputStream* out);
 151 };
 152 
 153 
 154 //-----------------------------------------------------------------------------
 155 //------------------------------Parse------------------------------------------
 156 // Parse bytecodes, build a Graph
 157 class Parse : public GraphKit {
 158  public:
 159   // Per-block information needed by the parser:
 160   class Block {
 161    private:
 162     ciTypeFlow::Block* _flow;
 163     int                _pred_count;     // how many predecessors in CFG?
 164     int                _preds_parsed;   // how many of these have been parsed?
 165     uint               _count;          // how many times executed?  Currently only set by _goto's
 166     bool               _is_parsed;      // has this block been parsed yet?
 167     bool               _is_handler;     // is this block an exception handler?
 168     bool               _has_merged_backedge; // does this block have merged backedge?
 169     SafePointNode*     _start_map;      // all values flowing into this block
 170     MethodLivenessResult _live_locals;  // lazily initialized liveness bitmap


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