Mercurial > hg > truffle
diff src/share/vm/oops/methodData.cpp @ 10107:8df6ddda8090
Merge
author | jiangli |
---|---|
date | Mon, 15 Apr 2013 21:25:23 -0400 |
parents | b84fd7d73702 aeaca88565e6 |
children | a1ebd310d5c1 |
line wrap: on
line diff
--- a/src/share/vm/oops/methodData.cpp Thu Apr 11 21:54:46 2013 -0700 +++ b/src/share/vm/oops/methodData.cpp Mon Apr 15 21:25:23 2013 -0400 @@ -732,14 +732,17 @@ } else { int iic = method->interpreter_invocation_count(); if (mileage < iic) mileage = iic; - InvocationCounter* ic = method->invocation_counter(); - InvocationCounter* bc = method->backedge_counter(); - int icval = ic->count(); - if (ic->carry()) icval += CompileThreshold; - if (mileage < icval) mileage = icval; - int bcval = bc->count(); - if (bc->carry()) bcval += CompileThreshold; - if (mileage < bcval) mileage = bcval; + MethodCounters* mcs = method->method_counters(); + if (mcs != NULL) { + InvocationCounter* ic = mcs->invocation_counter(); + InvocationCounter* bc = mcs->backedge_counter(); + int icval = ic->count(); + if (ic->carry()) icval += CompileThreshold; + if (mileage < icval) mileage = icval; + int bcval = bc->count(); + if (bc->carry()) bcval += CompileThreshold; + if (mileage < bcval) mileage = bcval; + } } return mileage; }