--- a/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp Tue Oct 13 18:13:34 2015 -0400
+++ b/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp Thu Jan 07 13:59:49 2016 -0500
@@ -94,6 +94,7 @@
case T_SHORT:
return (intptr_t)(jshort)result;
case T_OBJECT: // nothing to do fall through
+ case T_ARRAY:
case T_LONG:
case T_INT:
case T_FLOAT:
@@ -184,7 +185,7 @@
}
else if (istate->msg() == BytecodeInterpreter::return_from_method) {
// Copy the result into the caller's frame
- result_slots = type2size[result_type_of(method)];
+ result_slots = type2size[method->result_type()];
assert(result_slots >= 0 && result_slots <= 2, "what?");
result = istate->stack() + result_slots;
break;
@@ -222,7 +223,7 @@
// Adjust result to smaller
intptr_t res = result[-i];
if (result_slots == 1) {
- res = narrow(result_type_of(method), res);
+ res = narrow(method->result_type(), res);
}
stack->push(res);
}
@@ -436,7 +437,7 @@
// Push our result
if (!HAS_PENDING_EXCEPTION) {
- BasicType type = result_type_of(method);
+ BasicType type = method->result_type();
stack->set_sp(stack->sp() - type2size[type]);
switch (type) {