mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-21 03:24:38 +02:00
8032463: VirtualDispatch test timeout with DeoptimizeALot
Introduce code aging for warm method detection Reviewed-by: kvn, twisti
This commit is contained in:
parent
5938d3d5b9
commit
54db2c2d61
27 changed files with 283 additions and 69 deletions
|
@ -62,6 +62,7 @@ class Deoptimization : AllStatic {
|
|||
Reason_speculate_class_check, // saw unexpected object class from type speculation
|
||||
Reason_speculate_null_check, // saw unexpected null from type speculation
|
||||
Reason_rtm_state_change, // rtm state change detected
|
||||
Reason_tenured, // age of the code has reached the limit
|
||||
Reason_LIMIT,
|
||||
// Note: Keep this enum in sync. with _trap_reason_name.
|
||||
Reason_RECORDED_LIMIT = Reason_bimorphic // some are not recorded per bc
|
||||
|
@ -357,8 +358,8 @@ class Deoptimization : AllStatic {
|
|||
// returning to a deoptimized caller
|
||||
static void popframe_preserve_args(JavaThread* thread, int bytes_to_save, void* start_address);
|
||||
|
||||
private:
|
||||
static MethodData* get_method_data(JavaThread* thread, methodHandle m, bool create_if_missing);
|
||||
private:
|
||||
// Update the mdo's count and per-BCI reason bits, returning previous state:
|
||||
static ProfileData* query_update_method_data(MethodData* trap_mdo,
|
||||
int trap_bci,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue