< prev index next >

src/hotspot/share/classfile/classLoader.hpp

Print this page
rev 47404 : [mq]: load_ptr_acquire
rev 47406 : [mq]: assembler_cmpxchg

*** 46,62 **** class ClassPathEntry : public CHeapObj<mtClass> { private: ClassPathEntry* volatile _next; public: // Next entry in class path ! ClassPathEntry* next() const { ! return (ClassPathEntry*) OrderAccess::load_ptr_acquire(&_next); ! } virtual ~ClassPathEntry() {} void set_next(ClassPathEntry* next) { // may have unlocked readers, so ensure visibility. ! OrderAccess::release_store_ptr(&_next, next); } virtual bool is_jrt() = 0; virtual bool is_jar_file() const = 0; virtual const char* name() const = 0; virtual JImageFile* jimage() const = 0; --- 46,60 ---- class ClassPathEntry : public CHeapObj<mtClass> { private: ClassPathEntry* volatile _next; public: // Next entry in class path ! ClassPathEntry* next() const { return OrderAccess::load_acquire(&_next); } virtual ~ClassPathEntry() {} void set_next(ClassPathEntry* next) { // may have unlocked readers, so ensure visibility. ! OrderAccess::release_store(&_next, next); } virtual bool is_jrt() = 0; virtual bool is_jar_file() const = 0; virtual const char* name() const = 0; virtual JImageFile* jimage() const = 0;
< prev index next >