comparison src/cpu/zero/vm/cppInterpreter_zero.cpp @ 24002:8f58998958ca

8154210: Zero: Better byte behaviour Summary: Complete support for 8132051 on Zero and fix failure on 64-bit big-endian systems Reviewed-by: andrew, chrisphi, coleenp
author aph
date Tue, 26 Apr 2016 02:49:59 +0100
parents cc78c97abff8
children 9b69cec6d01b
comparison
equal deleted inserted replaced
24001:099bdbf208bc 24002:8f58998958ca
218 stack->set_sp(stack->sp() + method->max_locals()); 218 stack->set_sp(stack->sp() + method->max_locals());
219 219
220 // Push our result 220 // Push our result
221 for (int i = 0; i < result_slots; i++) { 221 for (int i = 0; i < result_slots; i++) {
222 // Adjust result to smaller 222 // Adjust result to smaller
223 intptr_t res = result[-i]; 223 union {
224 intptr_t res;
225 jint res_jint;
226 };
227 res = result[-i];
224 if (result_slots == 1) { 228 if (result_slots == 1) {
225 res = narrow(method->result_type(), res); 229 BasicType t = method->result_type();
230 if (is_subword_type(t)) {
231 res_jint = (jint)narrow(t, res_jint);
232 }
226 } 233 }
227 stack->push(res); 234 stack->push(res);
228 } 235 }
229 } 236 }
230 237