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

Zero: Simplify interpreter initialization

XMLWordPrintable

    • b23

        The prolog in BytecodeInterpreter is hairy due to early initialization of interpreter state. Previous rewrites make it mostly redundant, and we can now simplify it.

        This also implicitly fixes a initialization bug. If JvmtiExport::can_post_interpreter_events() changes at runtime, we will call into the uninitialized version:

            // Call the interpreter
            if (JvmtiExport::can_post_interpreter_events()) {
              BytecodeInterpreter::run<true>(istate);
            } else {
              BytecodeInterpreter::run<false>(istate);
            }

              shade Aleksey Shipilev
              shade Aleksey Shipilev
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: