when invoking Java methods from native code on 32-bit systems, push 32-bit halves of 64-bit values in reverse order since they are reversed again when pushed on the stack

This commit is contained in:
Joel Dice 2008-01-15 18:01:11 -07:00
parent d1b4dfccd0
commit 86bdd48a66

View File

@ -4242,7 +4242,10 @@ class ArgumentList {
if (BytesPerWord == 8) {
memcpy(array + position + 1, &v, 8);
} else {
memcpy(array + position, &v, 8);
// push words in reverse order, since they will be switched back
// when pushed on the stack:
array[position] = v >> 32;
array[position + 1] = v;
}
objectMask[position] = false;
objectMask[position + 1] = false;