--- a/hotspot/src/cpu/x86/vm/interp_masm_x86_64.cpp Wed Mar 05 02:41:57 2014 -0800
+++ b/hotspot/src/cpu/x86/vm/interp_masm_x86_64.cpp Wed Mar 05 15:14:25 2014 +0100
@@ -271,20 +271,6 @@
addptr(cache, tmp); // construct pointer to cache entry
}
-void InterpreterMacroAssembler::get_method_counters(Register method,
- Register mcs, Label& skip) {
- Label has_counters;
- movptr(mcs, Address(method, Method::method_counters_offset()));
- testptr(mcs, mcs);
- jcc(Assembler::notZero, has_counters);
- call_VM(noreg, CAST_FROM_FN_PTR(address,
- InterpreterRuntime::build_method_counters), method);
- movptr(mcs, Address(method,Method::method_counters_offset()));
- testptr(mcs, mcs);
- jcc(Assembler::zero, skip); // No MethodCounters allocated, OutOfMemory
- bind(has_counters);
-}
-
// Load object from cpool->resolved_references(index)
void InterpreterMacroAssembler::load_resolved_reference_at_index(
Register result, Register index) {
@@ -676,6 +662,21 @@
#endif // C_INTERP
+void InterpreterMacroAssembler::get_method_counters(Register method,
+ Register mcs, Label& skip) {
+ Label has_counters;
+ movptr(mcs, Address(method, Method::method_counters_offset()));
+ testptr(mcs, mcs);
+ jcc(Assembler::notZero, has_counters);
+ call_VM(noreg, CAST_FROM_FN_PTR(address,
+ InterpreterRuntime::build_method_counters), method);
+ movptr(mcs, Address(method,Method::method_counters_offset()));
+ testptr(mcs, mcs);
+ jcc(Assembler::zero, skip); // No MethodCounters allocated, OutOfMemory
+ bind(has_counters);
+}
+
+
// Lock object
//
// Args:
@@ -1423,6 +1424,20 @@
void InterpreterMacroAssembler::verify_FPU(int stack_depth, TosState state) {
}
+
+// Jump if ((*counter_addr += increment) & mask) satisfies the condition.
+void InterpreterMacroAssembler::increment_mask_and_jump(Address counter_addr,
+ int increment, int mask,
+ Register scratch, bool preloaded,
+ Condition cond, Label* where) {
+ if (!preloaded) {
+ movl(scratch, counter_addr);
+ }
+ incrementl(scratch, increment);
+ movl(counter_addr, scratch);
+ andl(scratch, mask);
+ jcc(cond, *where);
+}
#endif // !CC_INTERP
@@ -1491,16 +1506,3 @@
}
}
-// Jump if ((*counter_addr += increment) & mask) satisfies the condition.
-void InterpreterMacroAssembler::increment_mask_and_jump(Address counter_addr,
- int increment, int mask,
- Register scratch, bool preloaded,
- Condition cond, Label* where) {
- if (!preloaded) {
- movl(scratch, counter_addr);
- }
- incrementl(scratch, increment);
- movl(counter_addr, scratch);
- andl(scratch, mask);
- jcc(cond, *where);
-}