Mercurial > hg > graal-jvmci-8
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 |