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

Bad backport of 8024468 breaks Zero build due to lack of 8010862 in OpenJDK 7

    Details

    • Type: Bug
    • Status: In Progress
    • Priority: P4
    • Resolution: Unresolved
    • Affects Version/s: openjdk7u
    • Fix Version/s: 7
    • Component/s: hotspot
    • Labels:
    • Subcomponent:
    • Understanding:
      Fix Understood
    • Introduced In Build:
      b00
    • Introduced In Version:
    • CPU:
      generic
    • OS:
      generic

      Backports

        Description

        /home/andrew/projects/openjdk/upstream/jdk7/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp: In static member function 'static int CppInterpreter::native_entry(methodOop, intptr_t, Thread*)':
        /home/andrew/projects/openjdk/upstream/jdk7/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp:253:42: error: 'mcs' was not declared in this scope
             if (counter->reached_InvocationLimit(mcs->backedge_counter())) {
                                                  ^~~
        make[6]: *** [/home/andrew/projects/openjdk/upstream/jdk7/hotspot/make/linux/makefiles/rules.make:151: cppInterpreter_zero.o] Error 1

        mcs is only added by 8013607 (not in OpenJDK 7):

        diff --git a/src/cpu/zero/vm/cppInterpreter_zero.cpp b/src/cpu/zero/vm/cppInterpreter_zero.cpp
        --- a/src/cpu/zero/vm/cppInterpreter_zero.cpp
        +++ b/src/cpu/zero/vm/cppInterpreter_zero.cpp
        @@ -212,7 +212,13 @@
         
           // Update the invocation counter
           if ((UseCompiler || CountCompiledCalls) && !method->is_synchronized()) {
        - InvocationCounter *counter = method->invocation_counter();
        + MethodCounters* mcs = method->method_counters();
        + if (mcs == NULL) {
        + CALL_VM_NOCHECK(mcs = InterpreterRuntime::build_method_counters(thread, method));
        + if (HAS_PENDING_EXCEPTION)
        + goto unwind_and_return;
        + }
        + InvocationCounter *counter = mcs->invocation_counter();
             counter->increment();
             if (counter->reached_InvocationLimit()) {
               CALL_VM_NOCHECK(

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  andrew Andrew Hughes
                  Reporter:
                  andrew Andrew Hughes
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  1 Start watching this issue

                  Dates

                  • Created:
                    Updated: