< prev index next >

src/hotspot/share/classfile/javaClasses.cpp

Print this page


3232   param->int_field_put(index_offset, value);
3233 }
3234 
3235 oop java_lang_reflect_Parameter::executable(oop param) {
3236   assert(Universe::is_fully_initialized(), "Need to find another solution to the reflection problem");
3237   return param->obj_field(executable_offset);
3238 }
3239 
3240 void java_lang_reflect_Parameter::set_executable(oop param, oop value) {
3241   assert(Universe::is_fully_initialized(), "Need to find another solution to the reflection problem");
3242   param->obj_field_put(executable_offset, value);
3243 }
3244 
3245 
3246 int java_lang_Module::loader_offset;
3247 int java_lang_Module::name_offset;
3248 int java_lang_Module::_module_entry_offset = -1;
3249 
3250 Handle java_lang_Module::create(Handle loader, Handle module_name, TRAPS) {
3251   assert(Universe::is_fully_initialized(), "Need to find another solution to the reflection problem");
3252 
3253   Symbol* name = vmSymbols::java_lang_Module();
3254   Klass* k = SystemDictionary::resolve_or_fail(name, true, CHECK_NH);
3255   InstanceKlass* ik = InstanceKlass::cast(k);
3256   Handle jlmh = ik->allocate_instance_handle(CHECK_NH);
3257   JavaValue result(T_VOID);
3258   JavaCalls::call_special(&result, jlmh, ik,
3259                           vmSymbols::object_initializer_name(),
3260                           vmSymbols::java_lang_module_init_signature(),
3261                           loader, module_name, CHECK_NH);
3262   return jlmh;
3263 }
3264 
3265 #define MODULE_FIELDS_DO(macro) \
3266   macro(loader_offset,  k, vmSymbols::loader_name(),  classloader_signature, false); \
3267   macro(name_offset,    k, vmSymbols::name_name(),    string_signature,      false)
3268 
3269 void java_lang_Module::compute_offsets() {
3270   InstanceKlass* k = SystemDictionary::Module_klass();
3271   MODULE_FIELDS_DO(FIELD_COMPUTE_OFFSET);
3272   MODULE_INJECTED_FIELDS(INJECTED_FIELD_COMPUTE_OFFSET);
3273 }
3274 
3275 #if INCLUDE_CDS
3276 void java_lang_Module::serialize(SerializeClosure* f) {
3277   MODULE_FIELDS_DO(FIELD_SERIALIZE_OFFSET);
3278   MODULE_INJECTED_FIELDS(INJECTED_FIELD_SERIALIZE_OFFSET);
3279 }
3280 #endif
3281 
3282 oop java_lang_Module::loader(oop module) {




3232   param->int_field_put(index_offset, value);
3233 }
3234 
3235 oop java_lang_reflect_Parameter::executable(oop param) {
3236   assert(Universe::is_fully_initialized(), "Need to find another solution to the reflection problem");
3237   return param->obj_field(executable_offset);
3238 }
3239 
3240 void java_lang_reflect_Parameter::set_executable(oop param, oop value) {
3241   assert(Universe::is_fully_initialized(), "Need to find another solution to the reflection problem");
3242   param->obj_field_put(executable_offset, value);
3243 }
3244 
3245 
3246 int java_lang_Module::loader_offset;
3247 int java_lang_Module::name_offset;
3248 int java_lang_Module::_module_entry_offset = -1;
3249 
3250 Handle java_lang_Module::create(Handle loader, Handle module_name, TRAPS) {
3251   assert(Universe::is_fully_initialized(), "Need to find another solution to the reflection problem");
3252   return JavaCalls::construct_new_instance(SystemDictionary::Module_klass(),







3253                           vmSymbols::java_lang_module_init_signature(),
3254                           loader, module_name, CHECK_NH);

3255 }
3256 
3257 #define MODULE_FIELDS_DO(macro) \
3258   macro(loader_offset,  k, vmSymbols::loader_name(),  classloader_signature, false); \
3259   macro(name_offset,    k, vmSymbols::name_name(),    string_signature,      false)
3260 
3261 void java_lang_Module::compute_offsets() {
3262   InstanceKlass* k = SystemDictionary::Module_klass();
3263   MODULE_FIELDS_DO(FIELD_COMPUTE_OFFSET);
3264   MODULE_INJECTED_FIELDS(INJECTED_FIELD_COMPUTE_OFFSET);
3265 }
3266 
3267 #if INCLUDE_CDS
3268 void java_lang_Module::serialize(SerializeClosure* f) {
3269   MODULE_FIELDS_DO(FIELD_SERIALIZE_OFFSET);
3270   MODULE_INJECTED_FIELDS(INJECTED_FIELD_SERIALIZE_OFFSET);
3271 }
3272 #endif
3273 
3274 oop java_lang_Module::loader(oop module) {


< prev index next >