# HG changeset patch # User apangin # Date 1265914090 28800 # Node ID c7956838bfccb0af6f93ab4740837216c505b706 # Parent 160bfc92468261c80ec94fafbb368edf79e04607# Parent 81b0130673ef8529b9f880a12c7f09b3bb5bc4ae Merge diff -r 160bfc924682 -r c7956838bfcc hotspot/src/cpu/x86/vm/templateTable_x86_64.cpp --- a/hotspot/src/cpu/x86/vm/templateTable_x86_64.cpp Mon Feb 08 09:58:32 2010 -0800 +++ b/hotspot/src/cpu/x86/vm/templateTable_x86_64.cpp Thu Feb 11 10:48:10 2010 -0800 @@ -3238,17 +3238,19 @@ __ xorl(rcx, rcx); // use zero reg to clear memory (shorter code) __ store_klass_gap(rax, rcx); // zero klass gap for compressed oops __ store_klass(rax, rsi); // store klass last + + { + SkipIfEqual skip(_masm, &DTraceAllocProbes, false); + // Trigger dtrace event for fastpath + __ push(atos); // save the return value + __ call_VM_leaf( + CAST_FROM_FN_PTR(address, SharedRuntime::dtrace_object_alloc), rax); + __ pop(atos); // restore the return value + + } __ jmp(done); } - { - SkipIfEqual skip(_masm, &DTraceAllocProbes, false); - // Trigger dtrace event for fastpath - __ push(atos); // save the return value - __ call_VM_leaf( - CAST_FROM_FN_PTR(address, SharedRuntime::dtrace_object_alloc), rax); - __ pop(atos); // restore the return value - } // slow case __ bind(slow_case);