< prev index next >

src/hotspot/share/classfile/javaClasses.cpp

Print this page

        

*** 4025,4047 **** int java_lang_ClassLoader::parallelCapable_offset = -1; int java_lang_ClassLoader::name_offset = -1; int java_lang_ClassLoader::nameAndId_offset = -1; int java_lang_ClassLoader::unnamedModule_offset = -1; ! ClassLoaderData* java_lang_ClassLoader::loader_data(oop loader) { assert(loader != NULL && oopDesc::is_oop(loader), "loader must be oop"); ! return HeapAccess<>::load_at(loader, _loader_data_offset); } ClassLoaderData* java_lang_ClassLoader::loader_data_raw(oop loader) { assert(loader != NULL && oopDesc::is_oop(loader), "loader must be oop"); return RawAccess<>::load_at(loader, _loader_data_offset); } ! ClassLoaderData* java_lang_ClassLoader::cmpxchg_loader_data(ClassLoaderData* new_data, oop loader, ClassLoaderData* expected_data) { assert(loader != NULL && oopDesc::is_oop(loader), "loader must be oop"); ! return HeapAccess<>::atomic_cmpxchg_at(new_data, loader, _loader_data_offset, expected_data); } #define CLASSLOADER_FIELDS_DO(macro) \ macro(parallelCapable_offset, k1, "parallelLockMap", concurrenthashmap_signature, false); \ macro(name_offset, k1, vmSymbols::name_name(), string_signature, false); \ --- 4025,4047 ---- int java_lang_ClassLoader::parallelCapable_offset = -1; int java_lang_ClassLoader::name_offset = -1; int java_lang_ClassLoader::nameAndId_offset = -1; int java_lang_ClassLoader::unnamedModule_offset = -1; ! ClassLoaderData* java_lang_ClassLoader::loader_data_acquire(oop loader) { assert(loader != NULL && oopDesc::is_oop(loader), "loader must be oop"); ! return HeapAccess<MO_ACQUIRE>::load_at(loader, _loader_data_offset); } ClassLoaderData* java_lang_ClassLoader::loader_data_raw(oop loader) { assert(loader != NULL && oopDesc::is_oop(loader), "loader must be oop"); return RawAccess<>::load_at(loader, _loader_data_offset); } ! void java_lang_ClassLoader::release_set_loader_data(oop loader, ClassLoaderData* new_data) { assert(loader != NULL && oopDesc::is_oop(loader), "loader must be oop"); ! HeapAccess<MO_RELEASE>::store_at(loader, _loader_data_offset, new_data); } #define CLASSLOADER_FIELDS_DO(macro) \ macro(parallelCapable_offset, k1, "parallelLockMap", concurrenthashmap_signature, false); \ macro(name_offset, k1, vmSymbols::name_name(), string_signature, false); \
< prev index next >