< prev index next >

src/hotspot/cpu/x86/macroAssembler_x86.hpp

Print this page
@@ -362,13 +362,24 @@
    void load_method_holder_cld(Register rresult, Register rmethod);
  
    void load_method_holder(Register holder, Register method);
  
    // oop manipulations
+ #ifdef _LP64
+   void load_nklass_compact(Register dst, Register src);
+ #endif
    void load_klass(Register dst, Register src, Register tmp);
    void store_klass(Register dst, Register src, Register tmp);
  
+   // Compares the Klass pointer of an object to a given Klass (which might be narrow,
+   // depending on UseCompressedClassPointers).
+   void cmp_klass(Register klass, Register dst, Register tmp);
+ 
+   // Compares the Klass pointer of two objects o1 and o2. Result is in the condition flags.
+   // Uses tmp1 and tmp2 as temporary registers.
+   void cmp_klass(Register src, Register dst, Register tmp1, Register tmp2);
+ 
    void access_load_at(BasicType type, DecoratorSet decorators, Register dst, Address src,
                        Register tmp1, Register thread_tmp);
    void access_store_at(BasicType type, DecoratorSet decorators, Address dst, Register val,
                         Register tmp1, Register tmp2, Register tmp3);
  

@@ -2034,11 +2045,11 @@
  
    void vallones(XMMRegister dst, int vector_len);
  
    void check_stack_alignment(Register sp, const char* msg, unsigned bias = 0, Register tmp = noreg);
  
-   void lightweight_lock(Register obj, Register reg_rax, Register thread, Register tmp, Label& slow);
+   void lightweight_lock(Register basic_lock, Register obj, Register reg_rax, Register thread, Register tmp, Label& slow);
    void lightweight_unlock(Register obj, Register reg_rax, Register thread, Register tmp, Label& slow);
  };
  
  /**
   * class SkipIfEqual:
< prev index next >