/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(