comparison src/cpu/ppc/vm/interpreter_ppc.cpp @ 23862:aa6d8e03b258

Merge
author asaha
date Fri, 05 Feb 2016 23:10:25 -0800
parents e9e252c83b2b 737b321e6f0e
children
comparison
equal deleted inserted replaced
23858:737b321e6f0e 23862:aa6d8e03b258
294 __ b(loop_start); 294 __ b(loop_start);
295 295
296 __ bind(do_float); 296 __ bind(do_float);
297 __ lfs(floatSlot, 0, arg_java); 297 __ lfs(floatSlot, 0, arg_java);
298 #if defined(LINUX) 298 #if defined(LINUX)
299 // Linux uses ELF ABI. Both original ELF and ELFv2 ABIs have float
300 // in the least significant word of an argument slot.
301 #if defined(VM_LITTLE_ENDIAN)
302 __ stfs(floatSlot, 0, arg_c);
303 #else
299 __ stfs(floatSlot, 4, arg_c); 304 __ stfs(floatSlot, 4, arg_c);
305 #endif
300 #elif defined(AIX) 306 #elif defined(AIX)
307 // Although AIX runs on big endian CPU, float is in most significant
308 // word of an argument slot.
301 __ stfs(floatSlot, 0, arg_c); 309 __ stfs(floatSlot, 0, arg_c);
302 #else 310 #else
303 #error "unknown OS" 311 #error "unknown OS"
304 #endif 312 #endif
305 __ addi(arg_java, arg_java, -BytesPerWord); 313 __ addi(arg_java, arg_java, -BytesPerWord);