82 // Certain classes are preloaded, such as java.lang.Object and java.lang.String.
83 // They are all "well-known", in the sense that no class loader is allowed
84 // to provide a different definition.
85 //
86 // These klasses must all have names defined in vmSymbols.
87
88 #define WK_KLASS_ENUM_NAME(kname) kname##_knum
89
90 // Each well-known class has a short klass name (like object_klass),
91 // a vmSymbol name (like java_lang_Object), and a flag word
92 // that makes some minor distinctions, like whether the klass
93 // is preloaded, optional, release-specific, etc.
94 // The order of these definitions is significant; it is the order in which
95 // preloading is actually performed by initialize_preloaded_classes.
96
97 #define WK_KLASSES_DO(do_klass) \
98 /* well-known classes */ \
99 do_klass(Object_klass, java_lang_Object, Pre ) \
100 do_klass(String_klass, java_lang_String, Pre ) \
101 do_klass(Class_klass, java_lang_Class, Pre ) \
102 do_klass(Cloneable_klass, java_lang_Cloneable, Pre ) \
103 do_klass(ClassLoader_klass, java_lang_ClassLoader, Pre ) \
104 do_klass(Serializable_klass, java_io_Serializable, Pre ) \
105 do_klass(System_klass, java_lang_System, Pre ) \
106 do_klass(Throwable_klass, java_lang_Throwable, Pre ) \
107 do_klass(Error_klass, java_lang_Error, Pre ) \
108 do_klass(ThreadDeath_klass, java_lang_ThreadDeath, Pre ) \
109 do_klass(Exception_klass, java_lang_Exception, Pre ) \
110 do_klass(RuntimeException_klass, java_lang_RuntimeException, Pre ) \
111 do_klass(SecurityManager_klass, java_lang_SecurityManager, Pre ) \
112 do_klass(ProtectionDomain_klass, java_security_ProtectionDomain, Pre ) \
113 do_klass(AccessControlContext_klass, java_security_AccessControlContext, Pre ) \
114 do_klass(SecureClassLoader_klass, java_security_SecureClassLoader, Pre ) \
115 do_klass(ClassNotFoundException_klass, java_lang_ClassNotFoundException, Pre ) \
116 do_klass(NoClassDefFoundError_klass, java_lang_NoClassDefFoundError, Pre ) \
117 do_klass(LinkageError_klass, java_lang_LinkageError, Pre ) \
118 do_klass(ClassCastException_klass, java_lang_ClassCastException, Pre ) \
119 do_klass(ArrayStoreException_klass, java_lang_ArrayStoreException, Pre ) \
120 do_klass(VirtualMachineError_klass, java_lang_VirtualMachineError, Pre ) \
121 do_klass(OutOfMemoryError_klass, java_lang_OutOfMemoryError, Pre ) \
|
82 // Certain classes are preloaded, such as java.lang.Object and java.lang.String.
83 // They are all "well-known", in the sense that no class loader is allowed
84 // to provide a different definition.
85 //
86 // These klasses must all have names defined in vmSymbols.
87
88 #define WK_KLASS_ENUM_NAME(kname) kname##_knum
89
90 // Each well-known class has a short klass name (like object_klass),
91 // a vmSymbol name (like java_lang_Object), and a flag word
92 // that makes some minor distinctions, like whether the klass
93 // is preloaded, optional, release-specific, etc.
94 // The order of these definitions is significant; it is the order in which
95 // preloading is actually performed by initialize_preloaded_classes.
96
97 #define WK_KLASSES_DO(do_klass) \
98 /* well-known classes */ \
99 do_klass(Object_klass, java_lang_Object, Pre ) \
100 do_klass(String_klass, java_lang_String, Pre ) \
101 do_klass(Class_klass, java_lang_Class, Pre ) \
102 do_klass(Class_ClassData_klass, java_lang_Class_ClassData, Pre ) \
103 do_klass(Cloneable_klass, java_lang_Cloneable, Pre ) \
104 do_klass(ClassLoader_klass, java_lang_ClassLoader, Pre ) \
105 do_klass(Serializable_klass, java_io_Serializable, Pre ) \
106 do_klass(System_klass, java_lang_System, Pre ) \
107 do_klass(Throwable_klass, java_lang_Throwable, Pre ) \
108 do_klass(Error_klass, java_lang_Error, Pre ) \
109 do_klass(ThreadDeath_klass, java_lang_ThreadDeath, Pre ) \
110 do_klass(Exception_klass, java_lang_Exception, Pre ) \
111 do_klass(RuntimeException_klass, java_lang_RuntimeException, Pre ) \
112 do_klass(SecurityManager_klass, java_lang_SecurityManager, Pre ) \
113 do_klass(ProtectionDomain_klass, java_security_ProtectionDomain, Pre ) \
114 do_klass(AccessControlContext_klass, java_security_AccessControlContext, Pre ) \
115 do_klass(SecureClassLoader_klass, java_security_SecureClassLoader, Pre ) \
116 do_klass(ClassNotFoundException_klass, java_lang_ClassNotFoundException, Pre ) \
117 do_klass(NoClassDefFoundError_klass, java_lang_NoClassDefFoundError, Pre ) \
118 do_klass(LinkageError_klass, java_lang_LinkageError, Pre ) \
119 do_klass(ClassCastException_klass, java_lang_ClassCastException, Pre ) \
120 do_klass(ArrayStoreException_klass, java_lang_ArrayStoreException, Pre ) \
121 do_klass(VirtualMachineError_klass, java_lang_VirtualMachineError, Pre ) \
122 do_klass(OutOfMemoryError_klass, java_lang_OutOfMemoryError, Pre ) \
|