< prev index next >

src/hotspot/share/cds/regeneratedClasses.hpp

Print this page

26 #define SHARE_CDS_REGENERATEDCLASSES_HPP
27 
28 #include "memory/allStatic.hpp"
29 #include "utilities/globalDefinitions.hpp"
30 
31 class InstanceKlass;
32 
33 // CDS regenerates some of the classes that are loaded normally during the dumping
34 // process. For example, LambdaFormInvokers creates new versions of the four
35 // java.lang.invoke.xxx$Holder classes that have additional methods.
36 //
37 // RegeneratedClasses records the relocation between the "original" and
38 // "regenerated" versions of these classes. When writing the CDS archive, all
39 // references to the "original" versions are redirected to the "regenerated"
40 // versions.
41 class RegeneratedClasses : public AllStatic {
42  public:
43   static void add_class(InstanceKlass* orig_klass, InstanceKlass* regen_klass);
44   static void cleanup();
45   static bool has_been_regenerated(address orig_obj);


46   static void record_regenerated_objects();
47 };
48 
49 #endif // SHARE_CDS_REGENERATEDCLASSES_HPP

26 #define SHARE_CDS_REGENERATEDCLASSES_HPP
27 
28 #include "memory/allStatic.hpp"
29 #include "utilities/globalDefinitions.hpp"
30 
31 class InstanceKlass;
32 
33 // CDS regenerates some of the classes that are loaded normally during the dumping
34 // process. For example, LambdaFormInvokers creates new versions of the four
35 // java.lang.invoke.xxx$Holder classes that have additional methods.
36 //
37 // RegeneratedClasses records the relocation between the "original" and
38 // "regenerated" versions of these classes. When writing the CDS archive, all
39 // references to the "original" versions are redirected to the "regenerated"
40 // versions.
41 class RegeneratedClasses : public AllStatic {
42  public:
43   static void add_class(InstanceKlass* orig_klass, InstanceKlass* regen_klass);
44   static void cleanup();
45   static bool has_been_regenerated(address orig_obj);
46   static address get_regenerated_object(address orig_obj);
47   static bool is_a_regenerated_object(address obj);
48   static void record_regenerated_objects();
49 };
50 
51 #endif // SHARE_CDS_REGENERATEDCLASSES_HPP
< prev index next >