< prev index next >

src/hotspot/cpu/s390/macroAssembler_s390.hpp

Print this page




 811  public:
 812   // tmp1 and tmp2 are used with decorators ON_PHANTOM_OOP_REF or ON_WEAK_OOP_REF.
 813   void load_heap_oop(Register dest, const Address &a,
 814                      Register tmp1, Register tmp2,
 815                      DecoratorSet decorators = 0, Label *is_null = NULL);
 816   void store_heap_oop(Register Roop, const Address &a,
 817                       Register tmp1, Register tmp2, Register tmp3,
 818                       DecoratorSet decorators = 0);
 819 
 820   void oop_encoder(Register Rdst, Register Rsrc, bool maybeNULL,
 821                    Register Rbase = Z_R1, int pow2_offset = -1, bool only32bitValid = false);
 822   void oop_decoder(Register Rdst, Register Rsrc, bool maybeNULL,
 823                    Register Rbase = Z_R1, int pow2_offset = -1);
 824 
 825   void resolve_oop_handle(Register result);
 826   void load_mirror(Register mirror, Register method);
 827 
 828   //--------------------------
 829   //---  Operations on arrays.
 830   //--------------------------
 831   unsigned int Clear_Array(Register cnt_arg, Register base_pointer_arg, Register odd_tmp_reg);
 832   unsigned int Clear_Array_Const(long cnt, Register base);
 833   unsigned int Clear_Array_Const_Big(long cnt, Register base_pointer_arg, Register odd_tmp_reg);
 834   unsigned int CopyRawMemory_AlignedDisjoint(Register src_reg, Register dst_reg,
 835                                              Register cnt_reg,
 836                                              Register tmp1_reg, Register tmp2_reg);
 837 
 838   //-------------------------------------------
 839   // Special String Intrinsics Implementation.
 840   //-------------------------------------------
 841   // Intrinsics for CompactStrings
 842   //   Restores: src, dst
 843   //   Uses:     cnt
 844   //   Kills:    tmp, Z_R0, Z_R1.
 845   //   Early clobber: result.
 846   //   Boolean precise controls accuracy of result value.
 847   unsigned int string_compress(Register result, Register src, Register dst, Register cnt,
 848                                Register tmp,    bool precise);
 849 
 850   // Inflate byte[] to char[].
 851   unsigned int string_inflate_trot(Register src, Register dst, Register cnt, Register tmp);
 852 
 853   // Inflate byte[] to char[].




 811  public:
 812   // tmp1 and tmp2 are used with decorators ON_PHANTOM_OOP_REF or ON_WEAK_OOP_REF.
 813   void load_heap_oop(Register dest, const Address &a,
 814                      Register tmp1, Register tmp2,
 815                      DecoratorSet decorators = 0, Label *is_null = NULL);
 816   void store_heap_oop(Register Roop, const Address &a,
 817                       Register tmp1, Register tmp2, Register tmp3,
 818                       DecoratorSet decorators = 0);
 819 
 820   void oop_encoder(Register Rdst, Register Rsrc, bool maybeNULL,
 821                    Register Rbase = Z_R1, int pow2_offset = -1, bool only32bitValid = false);
 822   void oop_decoder(Register Rdst, Register Rsrc, bool maybeNULL,
 823                    Register Rbase = Z_R1, int pow2_offset = -1);
 824 
 825   void resolve_oop_handle(Register result);
 826   void load_mirror(Register mirror, Register method);
 827 
 828   //--------------------------
 829   //---  Operations on arrays.
 830   //--------------------------
 831   unsigned int Clear_Array(Register cnt_arg, Register base_pointer_arg, Register src_addr, Register src_len);
 832   unsigned int Clear_Array_Const(long cnt, Register base);
 833   unsigned int Clear_Array_Const_Big(long cnt, Register base_pointer_arg, Register src_addr, Register src_len);
 834   unsigned int CopyRawMemory_AlignedDisjoint(Register src_reg, Register dst_reg,
 835                                              Register cnt_reg,
 836                                              Register tmp1_reg, Register tmp2_reg);
 837 
 838   //-------------------------------------------
 839   // Special String Intrinsics Implementation.
 840   //-------------------------------------------
 841   // Intrinsics for CompactStrings
 842   //   Restores: src, dst
 843   //   Uses:     cnt
 844   //   Kills:    tmp, Z_R0, Z_R1.
 845   //   Early clobber: result.
 846   //   Boolean precise controls accuracy of result value.
 847   unsigned int string_compress(Register result, Register src, Register dst, Register cnt,
 848                                Register tmp,    bool precise);
 849 
 850   // Inflate byte[] to char[].
 851   unsigned int string_inflate_trot(Register src, Register dst, Register cnt, Register tmp);
 852 
 853   // Inflate byte[] to char[].


< prev index next >