src/share/vm/opto/compile.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hs-comp-code-aging Sdiff src/share/vm/opto

src/share/vm/opto/compile.hpp

Print this page




 294   int                   _orig_pc_slot;
 295   int                   _orig_pc_slot_offset_in_bytes;
 296 
 297   int                   _major_progress;        // Count of something big happening
 298   bool                  _inlining_progress;     // progress doing incremental inlining?
 299   bool                  _inlining_incrementally;// Are we doing incremental inlining (post parse)
 300   bool                  _has_loops;             // True if the method _may_ have some loops
 301   bool                  _has_split_ifs;         // True if the method _may_ have some split-if
 302   bool                  _has_unsafe_access;     // True if the method _may_ produce faults in unsafe loads or stores.
 303   bool                  _has_stringbuilder;     // True StringBuffers or StringBuilders are allocated
 304   bool                  _has_boxed_value;       // True if a boxed object is allocated
 305   int                   _max_vector_size;       // Maximum size of generated vectors
 306   uint                  _trap_hist[trapHistLength];  // Cumulative traps
 307   bool                  _trap_can_recompile;    // Have we emitted a recompiling trap?
 308   uint                  _decompile_count;       // Cumulative decompilation counts.
 309   bool                  _do_inlining;           // True if we intend to do inlining
 310   bool                  _do_scheduling;         // True if we intend to do scheduling
 311   bool                  _do_freq_based_layout;  // True if we intend to do frequency based block layout
 312   bool                  _do_count_invocations;  // True if we generate code to count invocations
 313   bool                  _do_method_data_update; // True if we generate code to update MethodData*s

 314   int                   _AliasLevel;            // Locally-adjusted version of AliasLevel flag.
 315   bool                  _print_assembly;        // True if we should dump assembly code for this compilation
 316   bool                  _print_inlining;        // True if we should print inlining for this compilation
 317   bool                  _print_intrinsics;      // True if we should print intrinsics for this compilation
 318 #ifndef PRODUCT
 319   bool                  _trace_opto_output;
 320   bool                  _parsed_irreducible_loop; // True if ciTypeFlow detected irreducible loops during parsing
 321 #endif
 322   bool                  _has_irreducible_loop;  // Found irreducible loops
 323   // JSR 292
 324   bool                  _has_method_handle_invokes; // True if this method has MethodHandle invokes.
 325   RTMState              _rtm_state;             // State of Restricted Transactional Memory usage
 326 
 327   // Compilation environment.
 328   Arena                 _comp_arena;            // Arena with lifetime equivalent to Compile
 329   ciEnv*                _env;                   // CI interface
 330   CompileLog*           _log;                   // from CompilerThread
 331   const char*           _failure_reason;        // for record_failure/failing pattern
 332   GrowableArray<CallGenerator*>* _intrinsics;   // List of intrinsics.
 333   GrowableArray<Node*>* _macro_nodes;           // List of nodes which need to be expanded before matching.


 567   void          set_has_boxed_value(bool z)     { _has_boxed_value = z; }
 568   int               max_vector_size() const     { return _max_vector_size; }
 569   void          set_max_vector_size(int s)      { _max_vector_size = s; }
 570   void          set_trap_count(uint r, uint c)  { assert(r < trapHistLength, "oob");        _trap_hist[r] = c; }
 571   uint              trap_count(uint r) const    { assert(r < trapHistLength, "oob"); return _trap_hist[r]; }
 572   bool              trap_can_recompile() const  { return _trap_can_recompile; }
 573   void          set_trap_can_recompile(bool z)  { _trap_can_recompile = z; }
 574   uint              decompile_count() const     { return _decompile_count; }
 575   void          set_decompile_count(uint c)     { _decompile_count = c; }
 576   bool              allow_range_check_smearing() const;
 577   bool              do_inlining() const         { return _do_inlining; }
 578   void          set_do_inlining(bool z)         { _do_inlining = z; }
 579   bool              do_scheduling() const       { return _do_scheduling; }
 580   void          set_do_scheduling(bool z)       { _do_scheduling = z; }
 581   bool              do_freq_based_layout() const{ return _do_freq_based_layout; }
 582   void          set_do_freq_based_layout(bool z){ _do_freq_based_layout = z; }
 583   bool              do_count_invocations() const{ return _do_count_invocations; }
 584   void          set_do_count_invocations(bool z){ _do_count_invocations = z; }
 585   bool              do_method_data_update() const { return _do_method_data_update; }
 586   void          set_do_method_data_update(bool z) { _do_method_data_update = z; }


 587   int               AliasLevel() const          { return _AliasLevel; }
 588   bool              print_assembly() const       { return _print_assembly; }
 589   void          set_print_assembly(bool z)       { _print_assembly = z; }
 590   bool              print_inlining() const       { return _print_inlining; }
 591   void          set_print_inlining(bool z)       { _print_inlining = z; }
 592   bool              print_intrinsics() const     { return _print_intrinsics; }
 593   void          set_print_intrinsics(bool z)     { _print_intrinsics = z; }
 594   RTMState          rtm_state()  const           { return _rtm_state; }
 595   void          set_rtm_state(RTMState s)        { _rtm_state = s; }
 596   bool              use_rtm() const              { return (_rtm_state & NoRTM) == 0; }
 597   bool          profile_rtm() const              { return _rtm_state == ProfileRTM; }
 598   // check the CompilerOracle for special behaviours for this compile
 599   bool          method_has_option(const char * option) {
 600     return method() != NULL && method()->has_option(option);
 601   }
 602 #ifndef PRODUCT
 603   bool          trace_opto_output() const       { return _trace_opto_output; }
 604   bool              parsed_irreducible_loop() const { return _parsed_irreducible_loop; }
 605   void          set_parsed_irreducible_loop(bool z) { _parsed_irreducible_loop = z; }
 606   int _in_dump_cnt;  // Required for dumping ir nodes.




 294   int                   _orig_pc_slot;
 295   int                   _orig_pc_slot_offset_in_bytes;
 296 
 297   int                   _major_progress;        // Count of something big happening
 298   bool                  _inlining_progress;     // progress doing incremental inlining?
 299   bool                  _inlining_incrementally;// Are we doing incremental inlining (post parse)
 300   bool                  _has_loops;             // True if the method _may_ have some loops
 301   bool                  _has_split_ifs;         // True if the method _may_ have some split-if
 302   bool                  _has_unsafe_access;     // True if the method _may_ produce faults in unsafe loads or stores.
 303   bool                  _has_stringbuilder;     // True StringBuffers or StringBuilders are allocated
 304   bool                  _has_boxed_value;       // True if a boxed object is allocated
 305   int                   _max_vector_size;       // Maximum size of generated vectors
 306   uint                  _trap_hist[trapHistLength];  // Cumulative traps
 307   bool                  _trap_can_recompile;    // Have we emitted a recompiling trap?
 308   uint                  _decompile_count;       // Cumulative decompilation counts.
 309   bool                  _do_inlining;           // True if we intend to do inlining
 310   bool                  _do_scheduling;         // True if we intend to do scheduling
 311   bool                  _do_freq_based_layout;  // True if we intend to do frequency based block layout
 312   bool                  _do_count_invocations;  // True if we generate code to count invocations
 313   bool                  _do_method_data_update; // True if we generate code to update MethodData*s
 314   bool                  _age_code;
 315   int                   _AliasLevel;            // Locally-adjusted version of AliasLevel flag.
 316   bool                  _print_assembly;        // True if we should dump assembly code for this compilation
 317   bool                  _print_inlining;        // True if we should print inlining for this compilation
 318   bool                  _print_intrinsics;      // True if we should print intrinsics for this compilation
 319 #ifndef PRODUCT
 320   bool                  _trace_opto_output;
 321   bool                  _parsed_irreducible_loop; // True if ciTypeFlow detected irreducible loops during parsing
 322 #endif
 323   bool                  _has_irreducible_loop;  // Found irreducible loops
 324   // JSR 292
 325   bool                  _has_method_handle_invokes; // True if this method has MethodHandle invokes.
 326   RTMState              _rtm_state;             // State of Restricted Transactional Memory usage
 327 
 328   // Compilation environment.
 329   Arena                 _comp_arena;            // Arena with lifetime equivalent to Compile
 330   ciEnv*                _env;                   // CI interface
 331   CompileLog*           _log;                   // from CompilerThread
 332   const char*           _failure_reason;        // for record_failure/failing pattern
 333   GrowableArray<CallGenerator*>* _intrinsics;   // List of intrinsics.
 334   GrowableArray<Node*>* _macro_nodes;           // List of nodes which need to be expanded before matching.


 568   void          set_has_boxed_value(bool z)     { _has_boxed_value = z; }
 569   int               max_vector_size() const     { return _max_vector_size; }
 570   void          set_max_vector_size(int s)      { _max_vector_size = s; }
 571   void          set_trap_count(uint r, uint c)  { assert(r < trapHistLength, "oob");        _trap_hist[r] = c; }
 572   uint              trap_count(uint r) const    { assert(r < trapHistLength, "oob"); return _trap_hist[r]; }
 573   bool              trap_can_recompile() const  { return _trap_can_recompile; }
 574   void          set_trap_can_recompile(bool z)  { _trap_can_recompile = z; }
 575   uint              decompile_count() const     { return _decompile_count; }
 576   void          set_decompile_count(uint c)     { _decompile_count = c; }
 577   bool              allow_range_check_smearing() const;
 578   bool              do_inlining() const         { return _do_inlining; }
 579   void          set_do_inlining(bool z)         { _do_inlining = z; }
 580   bool              do_scheduling() const       { return _do_scheduling; }
 581   void          set_do_scheduling(bool z)       { _do_scheduling = z; }
 582   bool              do_freq_based_layout() const{ return _do_freq_based_layout; }
 583   void          set_do_freq_based_layout(bool z){ _do_freq_based_layout = z; }
 584   bool              do_count_invocations() const{ return _do_count_invocations; }
 585   void          set_do_count_invocations(bool z){ _do_count_invocations = z; }
 586   bool              do_method_data_update() const { return _do_method_data_update; }
 587   void          set_do_method_data_update(bool z) { _do_method_data_update = z; }
 588   bool              age_code() const             { return _age_code; }
 589   void          set_age_code(bool z)             { _age_code = z; }
 590   int               AliasLevel() const           { return _AliasLevel; }
 591   bool              print_assembly() const       { return _print_assembly; }
 592   void          set_print_assembly(bool z)       { _print_assembly = z; }
 593   bool              print_inlining() const       { return _print_inlining; }
 594   void          set_print_inlining(bool z)       { _print_inlining = z; }
 595   bool              print_intrinsics() const     { return _print_intrinsics; }
 596   void          set_print_intrinsics(bool z)     { _print_intrinsics = z; }
 597   RTMState          rtm_state()  const           { return _rtm_state; }
 598   void          set_rtm_state(RTMState s)        { _rtm_state = s; }
 599   bool              use_rtm() const              { return (_rtm_state & NoRTM) == 0; }
 600   bool          profile_rtm() const              { return _rtm_state == ProfileRTM; }
 601   // check the CompilerOracle for special behaviours for this compile
 602   bool          method_has_option(const char * option) {
 603     return method() != NULL && method()->has_option(option);
 604   }
 605 #ifndef PRODUCT
 606   bool          trace_opto_output() const       { return _trace_opto_output; }
 607   bool              parsed_irreducible_loop() const { return _parsed_irreducible_loop; }
 608   void          set_parsed_irreducible_loop(bool z) { _parsed_irreducible_loop = z; }
 609   int _in_dump_cnt;  // Required for dumping ir nodes.


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