1.1 --- a/src/cpu/x86/vm/templateTable_x86_64.cpp Wed May 28 12:42:34 2008 -0700 1.2 +++ b/src/cpu/x86/vm/templateTable_x86_64.cpp Wed May 28 21:06:24 2008 -0700 1.3 @@ -3163,7 +3163,9 @@ 1.4 __ movptr(Address(rax, oopDesc::mark_offset_in_bytes()), 1.5 (intptr_t) markOopDesc::prototype()); // header (address 0x1) 1.6 } 1.7 - __ store_klass(rax, rsi); // klass 1.8 + __ xorl(rcx, rcx); // use zero reg to clear memory (shorter code) 1.9 + __ store_klass_gap(rax, rcx); // zero klass gap for compressed oops 1.10 + __ store_klass(rax, rsi); // store klass last 1.11 __ jmp(done); 1.12 } 1.13