< prev index next >

src/hotspot/share/oops/oop.hpp

Print this page
*** 84,10 ***
--- 84,11 ---
  
    inline Klass* klass() const;
    inline Klass* klass_or_null() const;
    inline Klass* klass_or_null_acquire() const;
  
+   narrowKlass narrow_klass_legacy() const { return _metadata._compressed_klass; }
    void set_narrow_klass(narrowKlass nk) NOT_CDS_JAVA_HEAP_RETURN;
    inline void set_klass(Klass* k);
    static inline void release_set_klass(HeapWord* mem, Klass* k);
  
    // For klass field compression

*** 250,18 ***
--- 251,21 ---
    inline bool is_forwarded() const;
  
    void verify_forwardee(oop forwardee) NOT_DEBUG_RETURN;
  
    inline void forward_to(oop p);
+   inline void forward_to_self();
  
    // Like "forward_to", but inserts the forwarding pointer atomically.
    // Exactly one thread succeeds in inserting the forwarding pointer, and
    // this call returns "NULL" for that thread; any other thread has the
    // value of the forwarding pointer returned and does not modify "this".
    inline oop forward_to_atomic(oop p, markWord compare, atomic_memory_order order = memory_order_conservative);
+   inline oop forward_to_self_atomic(markWord compare, atomic_memory_order order = memory_order_conservative);
  
    inline oop forwardee() const;
+   inline oop forwardee(markWord header) const;
  
    // Age of object during scavenge
    inline uint age() const;
    inline void incr_age();
  

*** 310,10 ***
--- 314,13 ---
  
    // for error reporting
    static void* load_klass_raw(oop obj);
    static void* load_oop_raw(oop obj, int offset);
  
+   // Runtime entry
+   static Klass* load_klass_runtime(oopDesc* o);
+ 
    // Avoid include gc_globals.hpp in oop.inline.hpp
    DEBUG_ONLY(bool get_UseParallelGC();)
    DEBUG_ONLY(bool get_UseG1GC();)
  };
  
< prev index next >