Print this page


Split Close
Expand all
Collapse all
          --- old/src/share/vm/c1/c1_GraphBuilder.cpp
          +++ new/src/share/vm/c1/c1_GraphBuilder.cpp
↓ open down ↓ 22 lines elided ↑ open up ↑
  23   23   */
  24   24  
  25   25  #include "precompiled.hpp"
  26   26  #include "c1/c1_CFGPrinter.hpp"
  27   27  #include "c1/c1_Canonicalizer.hpp"
  28   28  #include "c1/c1_Compilation.hpp"
  29   29  #include "c1/c1_GraphBuilder.hpp"
  30   30  #include "c1/c1_InstructionPrinter.hpp"
  31   31  #include "ci/ciField.hpp"
  32   32  #include "ci/ciKlass.hpp"
       33 +#include "compiler/compileBroker.hpp"
  33   34  #include "interpreter/bytecode.hpp"
  34   35  #include "runtime/sharedRuntime.hpp"
  35   36  #include "utilities/bitMap.inline.hpp"
  36   37  
  37   38  class BlockListBuilder VALUE_OBJ_CLASS_SPEC {
  38   39   private:
  39   40    Compilation* _compilation;
  40   41    IRScope*     _scope;
  41   42  
  42   43    BlockList    _blocks;                // internal list of all blocks
↓ open down ↓ 3725 lines elided ↑ open up ↑
3768 3769    bool preserves_state = false;
3769 3770    Intrinsic* result = new Intrinsic(result_type, callee->intrinsic_id(), args, false, state_before, preserves_state);
3770 3771    append_split(result);
3771 3772    push(result_type, result);
3772 3773    compilation()->set_has_unsafe_access(true);
3773 3774  }
3774 3775  
3775 3776  
3776 3777  #ifndef PRODUCT
3777 3778  void GraphBuilder::print_inline_result(ciMethod* callee, bool res) {
3778      -  const char sync_char      = callee->is_synchronized()        ? 's' : ' ';
3779      -  const char exception_char = callee->has_exception_handlers() ? '!' : ' ';
3780      -  const char monitors_char  = callee->has_monitor_bytecodes()  ? 'm' : ' ';
3781      -  tty->print("     %c%c%c ", sync_char, exception_char, monitors_char);
3782      -  for (int i = 0; i < scope()->level(); i++) tty->print("  ");
3783      -  if (res) {
3784      -    tty->print("  ");
3785      -  } else {
3786      -    tty->print("- ");
3787      -  }
3788      -  tty->print("@ %d  ", bci());
3789      -  callee->print_short_name();
3790      -  tty->print(" (%d bytes)", callee->code_size());
3791      -  if (_inline_bailout_msg) {
3792      -    tty->print("  %s", _inline_bailout_msg);
3793      -  }
3794      -  tty->cr();
3795      -
     3779 +  CompileTask::print_inlining(callee, scope()->level(), bci(), _inline_bailout_msg);
3796 3780    if (res && CIPrintMethodCodes) {
3797 3781      callee->print_codes();
3798 3782    }
3799 3783  }
3800 3784  
3801 3785  
3802 3786  void GraphBuilder::print_stats() {
3803 3787    vmap()->print();
3804 3788  }
3805 3789  #endif // PRODUCT
3806 3790  
3807 3791  void GraphBuilder::profile_call(Value recv, ciKlass* known_holder) {
3808 3792    append(new ProfileCall(method(), bci(), recv, known_holder));
3809 3793  }
3810 3794  
3811 3795  void GraphBuilder::profile_invocation(ciMethod* callee, ValueStack* state) {
3812 3796    append(new ProfileInvoke(callee, state));
3813 3797  }
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX