Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8154011

Make TraceDeoptimization a diagnostic flag

    XMLWordPrintable

    Details

    • Subcomponent:
    • Resolved In Build:
      b27

      Description

      Many times I wish I had TraceDeoptimization available in a product build just to find it's a develop flag. In general, deoptimization is a very expensive operation so the overhead of an additional check is negligible.

      Although there is one place where it could matter:

      StackValueCollection* interpretedVFrame::stack_data(bool expressions) const {

        InterpreterOopMap oop_mask;
        // oopmap for current bci
        if ((TraceDeoptimization && Verbose) JVMCI_ONLY( || PrintDeoptimizationDetails)) {
          methodHandle m_h(Thread::current(), method());
          OopMapCache::compute_one_oop_map(m_h, bci(), &oop_mask);
        } else {
          method()->mask_for(bci(), &oop_mask);
        }

      This method is used by various stack walking code in the VM and it might affect performance. Doing performance evaluation should give us an answer.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              tholenstein Tobias Holenstein
              Reporter:
              twisti Christian Thalinger
              Votes:
              6 Vote for this issue
              Watchers:
              8 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: