2571 static ByteSize invocation_counter_offset() { 2572 return byte_offset_of(MethodData, _invocation_counter); 2573 } 2574 2575 static ByteSize backedge_counter_offset() { 2576 return byte_offset_of(MethodData, _backedge_counter); 2577 } 2578 2579 static ByteSize invoke_mask_offset() { 2580 return byte_offset_of(MethodData, _invoke_mask); 2581 } 2582 2583 static ByteSize backedge_mask_offset() { 2584 return byte_offset_of(MethodData, _backedge_mask); 2585 } 2586 2587 static ByteSize parameters_type_data_di_offset() { 2588 return byte_offset_of(MethodData, _parameters_type_data_di); 2589 } 2590 2591 // Deallocation support - no pointer fields to deallocate 2592 void deallocate_contents(ClassLoaderData* loader_data) {} 2593 2594 // GC support 2595 void set_size(int object_size_in_bytes) { _size = object_size_in_bytes; } 2596 2597 // Printing 2598 void print_on (outputStream* st) const; 2599 void print_value_on(outputStream* st) const; 2600 2601 // printing support for method data 2602 void print_data_on(outputStream* st) const; 2603 2604 const char* internal_name() const { return "{method data}"; } 2605 2606 // verification 2607 void verify_on(outputStream* st); 2608 void verify_data_on(outputStream* st); 2609 2610 static bool profile_parameters_for_method(const methodHandle& m); | 2571 static ByteSize invocation_counter_offset() { 2572 return byte_offset_of(MethodData, _invocation_counter); 2573 } 2574 2575 static ByteSize backedge_counter_offset() { 2576 return byte_offset_of(MethodData, _backedge_counter); 2577 } 2578 2579 static ByteSize invoke_mask_offset() { 2580 return byte_offset_of(MethodData, _invoke_mask); 2581 } 2582 2583 static ByteSize backedge_mask_offset() { 2584 return byte_offset_of(MethodData, _backedge_mask); 2585 } 2586 2587 static ByteSize parameters_type_data_di_offset() { 2588 return byte_offset_of(MethodData, _parameters_type_data_di); 2589 } 2590 2591 virtual void metaspace_pointers_do(MetaspaceClosure* iter); 2592 virtual MetaspaceObj::Type type() const { return MethodDataType; } 2593 2594 // Deallocation support - no pointer fields to deallocate 2595 void deallocate_contents(ClassLoaderData* loader_data) {} 2596 2597 // GC support 2598 void set_size(int object_size_in_bytes) { _size = object_size_in_bytes; } 2599 2600 // Printing 2601 void print_on (outputStream* st) const; 2602 void print_value_on(outputStream* st) const; 2603 2604 // printing support for method data 2605 void print_data_on(outputStream* st) const; 2606 2607 const char* internal_name() const { return "{method data}"; } 2608 2609 // verification 2610 void verify_on(outputStream* st); 2611 void verify_data_on(outputStream* st); 2612 2613 static bool profile_parameters_for_method(const methodHandle& m); |