src/hotspot/share/code/compiledMethod.hpp
changeset 54150 5529640c5f67
parent 54122 4b1426ed1c44
child 54355 f226ab0b7f21
equal deleted inserted replaced
54149:c61f09122d3b 54150:5529640c5f67
    36 class xmlStream;
    36 class xmlStream;
    37 class CompiledStaticCall;
    37 class CompiledStaticCall;
    38 class NativeCallWrapper;
    38 class NativeCallWrapper;
    39 class ScopeDesc;
    39 class ScopeDesc;
    40 class CompiledIC;
    40 class CompiledIC;
       
    41 class MetadataClosure;
    41 
    42 
    42 // This class is used internally by nmethods, to cache
    43 // This class is used internally by nmethods, to cache
    43 // exception/pc/handler information.
    44 // exception/pc/handler information.
    44 
    45 
    45 class ExceptionCache : public CHeapObj<mtCode> {
    46 class ExceptionCache : public CHeapObj<mtCode> {
   366   // Verify and count cached icholder relocations.
   367   // Verify and count cached icholder relocations.
   367   int  verify_icholder_relocations();
   368   int  verify_icholder_relocations();
   368   void verify_oop_relocations();
   369   void verify_oop_relocations();
   369 
   370 
   370   virtual bool is_evol_dependent() = 0;
   371   virtual bool is_evol_dependent() = 0;
       
   372   bool has_evol_metadata();
       
   373 
   371   // Fast breakpoint support. Tells if this compiled method is
   374   // Fast breakpoint support. Tells if this compiled method is
   372   // dependent on the given method. Returns true if this nmethod
   375   // dependent on the given method. Returns true if this nmethod
   373   // corresponds to the given method as well.
   376   // corresponds to the given method as well.
   374   virtual bool is_dependent_on_method(Method* dependee) = 0;
   377   virtual bool is_dependent_on_method(Method* dependee) = 0;
   375 
   378 
   382   virtual CompiledStaticCall* compiledStaticCall_before(address addr) const = 0;
   385   virtual CompiledStaticCall* compiledStaticCall_before(address addr) const = 0;
   383 
   386 
   384   Method* attached_method(address call_pc);
   387   Method* attached_method(address call_pc);
   385   Method* attached_method_before_pc(address pc);
   388   Method* attached_method_before_pc(address pc);
   386 
   389 
   387   virtual void metadata_do(void f(Metadata*)) = 0;
   390   virtual void metadata_do(MetadataClosure* f) = 0;
   388 
   391 
   389   // GC support
   392   // GC support
   390  protected:
   393  protected:
   391   address oops_reloc_begin() const;
   394   address oops_reloc_begin() const;
   392 
   395