@@ -471,77 +471,74 @@ class nmethod : public CodeBlob {
471
471
void oops_do_set_strong_done (nmethod* old_head);
472
472
473
473
public:
474
- enum class ChangeReason : u1 {
475
- C1_codepatch,
476
- C1_deoptimize,
477
- C1_deoptimize_for_patching,
478
- C1_predicate_failed_trap,
479
- CI_replay,
480
- JVMCI_invalidate_nmethod,
481
- JVMCI_invalidate_nmethod_mirror,
482
- JVMCI_materialize_virtual_object,
483
- JVMCI_new_installation,
484
- JVMCI_register_method,
485
- JVMCI_replacing_with_new_code,
486
- JVMCI_reprofile,
487
- marked_for_deoptimization,
488
- missing_exception_handler,
489
- not_used,
490
- OSR_invalidation_back_branch,
491
- OSR_invalidation_for_compiling_with_C1,
492
- OSR_invalidation_of_lower_level,
493
- set_native_function,
494
- uncommon_trap,
495
- whitebox_deoptimization,
496
- zombie,
474
+ // If you change anything in this enum please patch
475
+ // vmStructs_jvmci.cpp accordingly.
476
+ enum class InvalidationReason : s1 {
477
+ NOT_INVALIDATED = -1 ,
478
+ C1_CODEPATCH,
479
+ C1_DEOPTIMIZE,
480
+ C1_DEOPTIMIZE_FOR_PATCHING,
481
+ C1_PREDICATE_FAILED_TRAP,
482
+ CI_REPLAY,
483
+ UNLOADING,
484
+ UNLOADING_COLD,
485
+ JVMCI_INVALIDATE,
486
+ JVMCI_MATERIALIZE_VIRTUAL_OBJECT,
487
+ JVMCI_REPLACED_WITH_NEW_CODE,
488
+ JVMCI_REPROFILE,
489
+ MARKED_FOR_DEOPTIMIZATION,
490
+ MISSING_EXCEPTION_HANDLER,
491
+ NOT_USED,
492
+ OSR_INVALIDATION_BACK_BRANCH,
493
+ OSR_INVALIDATION_FOR_COMPILING_WITH_C1,
494
+ OSR_INVALIDATION_OF_LOWER_LEVEL,
495
+ SET_NATIVE_FUNCTION,
496
+ UNCOMMON_TRAP,
497
+ WHITEBOX_DEOPTIMIZATION,
498
+ ZOMBIE,
499
+ INVALIDATION_REASONS_COUNT
497
500
};
498
501
499
502
500
- static const char * change_reason_to_string (ChangeReason change_reason ) {
501
- switch (change_reason ) {
502
- case ChangeReason::C1_codepatch :
503
+ static const char * invalidation_reason_to_string (InvalidationReason invalidation_reason ) {
504
+ switch (invalidation_reason ) {
505
+ case InvalidationReason::C1_CODEPATCH :
503
506
return " C1 code patch" ;
504
- case ChangeReason::C1_deoptimize :
507
+ case InvalidationReason::C1_DEOPTIMIZE :
505
508
return " C1 deoptimized" ;
506
- case ChangeReason::C1_deoptimize_for_patching :
509
+ case InvalidationReason::C1_DEOPTIMIZE_FOR_PATCHING :
507
510
return " C1 deoptimize for patching" ;
508
- case ChangeReason::C1_predicate_failed_trap :
511
+ case InvalidationReason::C1_PREDICATE_FAILED_TRAP :
509
512
return " C1 predicate failed trap" ;
510
- case ChangeReason::CI_replay :
513
+ case InvalidationReason::CI_REPLAY :
511
514
return " CI replay" ;
512
- case ChangeReason::JVMCI_invalidate_nmethod:
513
- return " JVMCI invalidate nmethod" ;
514
- case ChangeReason::JVMCI_invalidate_nmethod_mirror:
515
- return " JVMCI invalidate nmethod mirror" ;
516
- case ChangeReason::JVMCI_materialize_virtual_object:
515
+ case InvalidationReason::JVMCI_INVALIDATE:
516
+ return " JVMCI invalidate" ;
517
+ case InvalidationReason::JVMCI_MATERIALIZE_VIRTUAL_OBJECT:
517
518
return " JVMCI materialize virtual object" ;
518
- case ChangeReason::JVMCI_new_installation:
519
- return " JVMCI new installation" ;
520
- case ChangeReason::JVMCI_register_method:
521
- return " JVMCI register method" ;
522
- case ChangeReason::JVMCI_replacing_with_new_code:
523
- return " JVMCI replacing with new code" ;
524
- case ChangeReason::JVMCI_reprofile:
519
+ case InvalidationReason::JVMCI_REPLACED_WITH_NEW_CODE:
520
+ return " JVMCI replaced with new code" ;
521
+ case InvalidationReason::JVMCI_REPROFILE:
525
522
return " JVMCI reprofile" ;
526
- case ChangeReason::marked_for_deoptimization :
523
+ case InvalidationReason::MARKED_FOR_DEOPTIMIZATION :
527
524
return " marked for deoptimization" ;
528
- case ChangeReason::missing_exception_handler :
525
+ case InvalidationReason::MISSING_EXCEPTION_HANDLER :
529
526
return " missing exception handler" ;
530
- case ChangeReason::not_used :
527
+ case InvalidationReason::NOT_USED :
531
528
return " not used" ;
532
- case ChangeReason::OSR_invalidation_back_branch :
529
+ case InvalidationReason::OSR_INVALIDATION_BACK_BRANCH :
533
530
return " OSR invalidation back branch" ;
534
- case ChangeReason::OSR_invalidation_for_compiling_with_C1 :
531
+ case InvalidationReason::OSR_INVALIDATION_FOR_COMPILING_WITH_C1 :
535
532
return " OSR invalidation for compiling with C1" ;
536
- case ChangeReason::OSR_invalidation_of_lower_level :
533
+ case InvalidationReason::OSR_INVALIDATION_OF_LOWER_LEVEL :
537
534
return " OSR invalidation of lower level" ;
538
- case ChangeReason::set_native_function :
535
+ case InvalidationReason::SET_NATIVE_FUNCTION :
539
536
return " set native function" ;
540
- case ChangeReason::uncommon_trap :
537
+ case InvalidationReason::UNCOMMON_TRAP :
541
538
return " uncommon trap" ;
542
- case ChangeReason::whitebox_deoptimization :
539
+ case InvalidationReason::WHITEBOX_DEOPTIMIZATION :
543
540
return " whitebox deoptimization" ;
544
- case ChangeReason::zombie :
541
+ case InvalidationReason::ZOMBIE :
545
542
return " zombie" ;
546
543
default : {
547
544
assert (false , " Unhandled reason" );
@@ -712,8 +709,8 @@ class nmethod : public CodeBlob {
712
709
// alive. It is used when an uncommon trap happens. Returns true
713
710
// if this thread changed the state of the nmethod or false if
714
711
// another thread performed the transition.
715
- bool make_not_entrant (ChangeReason change_reason );
716
- bool make_not_used () { return make_not_entrant (ChangeReason::not_used ); }
712
+ bool make_not_entrant (InvalidationReason invalidation_reason );
713
+ bool make_not_used () { return make_not_entrant (InvalidationReason::NOT_USED ); }
717
714
718
715
bool is_marked_for_deoptimization () const { return deoptimization_status () != not_marked; }
719
716
bool has_been_deoptimized () const { return deoptimization_status () == deoptimize_done; }
@@ -1026,7 +1023,7 @@ class nmethod : public CodeBlob {
1026
1023
// Logging
1027
1024
void log_identity (xmlStream* log) const ;
1028
1025
void log_new_nmethod () const ;
1029
- void log_state_change (ChangeReason change_reason ) const ;
1026
+ void log_state_change (InvalidationReason invalidation_reason ) const ;
1030
1027
1031
1028
// Prints block-level comments, including nmethod specific block labels:
1032
1029
void print_nmethod_labels (outputStream* stream, address block_begin, bool print_section_labels=true ) const ;
0 commit comments