--- a/hotspot/src/cpu/x86/vm/sharedRuntime_x86_64.cpp Tue Feb 28 09:13:58 2012 +0100
+++ b/hotspot/src/cpu/x86/vm/sharedRuntime_x86_64.cpp Thu Mar 01 15:31:33 2012 -0800
@@ -1197,7 +1197,6 @@
if (in_regs[i].first()->is_Register() &&
(in_sig_bt[i] == T_LONG || in_sig_bt[i] == T_ARRAY)) {
int offset = slot * VMRegImpl::stack_slot_size;
- slot += VMRegImpl::slots_per_word;
if (map != NULL) {
__ movq(Address(rsp, offset), in_regs[i].first()->as_Register());
if (in_sig_bt[i] == T_ARRAY) {
@@ -1206,6 +1205,7 @@
} else {
__ movq(in_regs[i].first()->as_Register(), Address(rsp, offset));
}
+ slot += VMRegImpl::slots_per_word;
}
}
// Save or restore single word registers