< prev index next >

src/hotspot/cpu/riscv/c2_MacroAssembler_riscv.hpp

Print this page

 32   // Return true if the phase output is in the scratch emit size mode.
 33   virtual bool in_scratch_emit_size() override;
 34 
 35   void element_compare(Register r1, Register r2,
 36                        Register result, Register cnt,
 37                        Register tmp1, Register tmp2,
 38                        VectorRegister vr1, VectorRegister vr2,
 39                        VectorRegister vrs,
 40                        bool is_latin, Label& DONE, Assembler::LMUL lmul);
 41 
 42   void string_compare_long_same_encoding(Register result, Register str1, Register str2,
 43                                   const bool isLL, Register cnt1, Register cnt2,
 44                                   Register tmp1, Register tmp2, Register tmp3,
 45                                   const int STUB_THRESHOLD, Label *STUB, Label *SHORT_STRING, Label *DONE);
 46   void string_compare_long_different_encoding(Register result, Register str1, Register str2,
 47                                   bool isLU, Register cnt1, Register cnt2,
 48                                   Register tmp1, Register tmp2, Register tmp3,
 49                                   const int STUB_THRESHOLD, Label *STUB, Label *DONE);
 50 
 51  public:


 52   // Code used by cmpFastLock and cmpFastUnlock mach instructions in .ad file.
 53   void fast_lock(Register object, Register box,
 54                  Register tmp1, Register tmp2, Register tmp3, Register tmp4);
 55   void fast_unlock(Register object, Register box,
 56                    Register tmp1, Register tmp2, Register tmp3);
 57 
 58   void string_compare(Register str1, Register str2,
 59                       Register cnt1, Register cnt2, Register result,
 60                       Register tmp1, Register tmp2, Register tmp3,
 61                       int ae);
 62 
 63   void string_indexof_char_short(Register str1, Register cnt1,
 64                                  Register ch, Register result,
 65                                  bool isL);
 66 
 67   void string_indexof_char(Register str1, Register cnt1,
 68                            Register ch, Register result,
 69                            Register tmp1, Register tmp2,
 70                            Register tmp3, Register tmp4,
 71                            bool isL);

 32   // Return true if the phase output is in the scratch emit size mode.
 33   virtual bool in_scratch_emit_size() override;
 34 
 35   void element_compare(Register r1, Register r2,
 36                        Register result, Register cnt,
 37                        Register tmp1, Register tmp2,
 38                        VectorRegister vr1, VectorRegister vr2,
 39                        VectorRegister vrs,
 40                        bool is_latin, Label& DONE, Assembler::LMUL lmul);
 41 
 42   void string_compare_long_same_encoding(Register result, Register str1, Register str2,
 43                                   const bool isLL, Register cnt1, Register cnt2,
 44                                   Register tmp1, Register tmp2, Register tmp3,
 45                                   const int STUB_THRESHOLD, Label *STUB, Label *SHORT_STRING, Label *DONE);
 46   void string_compare_long_different_encoding(Register result, Register str1, Register str2,
 47                                   bool isLU, Register cnt1, Register cnt2,
 48                                   Register tmp1, Register tmp2, Register tmp3,
 49                                   const int STUB_THRESHOLD, Label *STUB, Label *DONE);
 50 
 51  public:
 52   void entry_barrier();
 53 
 54   // Code used by cmpFastLock and cmpFastUnlock mach instructions in .ad file.
 55   void fast_lock(Register object, Register box,
 56                  Register tmp1, Register tmp2, Register tmp3, Register tmp4);
 57   void fast_unlock(Register object, Register box,
 58                    Register tmp1, Register tmp2, Register tmp3);
 59 
 60   void string_compare(Register str1, Register str2,
 61                       Register cnt1, Register cnt2, Register result,
 62                       Register tmp1, Register tmp2, Register tmp3,
 63                       int ae);
 64 
 65   void string_indexof_char_short(Register str1, Register cnt1,
 66                                  Register ch, Register result,
 67                                  bool isL);
 68 
 69   void string_indexof_char(Register str1, Register cnt1,
 70                            Register ch, Register result,
 71                            Register tmp1, Register tmp2,
 72                            Register tmp3, Register tmp4,
 73                            bool isL);
< prev index next >