< prev index next >

src/hotspot/cpu/aarch64/stubRoutines_aarch64.hpp

Print this page
rev 58089 : Implement VectorShuffle rearrange and iota for AArch64 NEON


  34   return return_pc == _call_stub_return_address;
  35 }
  36 
  37 enum platform_dependent_constants {
  38   code_size1 = 19000,          // simply increase if too small (assembler will crash if too small)
  39   code_size2 = 28000           // simply increase if too small (assembler will crash if too small)
  40 };
  41 
  42 class aarch64 {
  43  friend class StubGenerator;
  44 
  45  private:
  46   static address _get_previous_fp_entry;
  47   static address _get_previous_sp_entry;
  48 
  49   static address _f2i_fixup;
  50   static address _f2l_fixup;
  51   static address _d2i_fixup;
  52   static address _d2l_fixup;
  53 

  54   static address _float_sign_mask;
  55   static address _float_sign_flip;
  56   static address _double_sign_mask;
  57   static address _double_sign_flip;
  58 
  59   static address _zero_blocks;
  60 
  61   static address _has_negatives;
  62   static address _has_negatives_long;
  63   static address _large_array_equals;
  64   static address _compare_long_string_LL;
  65   static address _compare_long_string_LU;
  66   static address _compare_long_string_UL;
  67   static address _compare_long_string_UU;
  68   static address _string_indexof_linear_ll;
  69   static address _string_indexof_linear_uu;
  70   static address _string_indexof_linear_ul;
  71   static address _large_byte_array_inflate;
  72   static bool _completed;
  73 


  84   }
  85 
  86   static address f2i_fixup()
  87   {
  88     return _f2i_fixup;
  89   }
  90 
  91   static address f2l_fixup()
  92   {
  93     return _f2l_fixup;
  94   }
  95 
  96   static address d2i_fixup()
  97   {
  98     return _d2i_fixup;
  99   }
 100 
 101   static address d2l_fixup()
 102   {
 103     return _d2l_fixup;




 104   }
 105 
 106   static address float_sign_mask()
 107   {
 108     return _float_sign_mask;
 109   }
 110 
 111   static address float_sign_flip()
 112   {
 113     return _float_sign_flip;
 114   }
 115 
 116   static address double_sign_mask()
 117   {
 118     return _double_sign_mask;
 119   }
 120 
 121   static address double_sign_flip()
 122   {
 123     return _double_sign_flip;




  34   return return_pc == _call_stub_return_address;
  35 }
  36 
  37 enum platform_dependent_constants {
  38   code_size1 = 19000,          // simply increase if too small (assembler will crash if too small)
  39   code_size2 = 28000           // simply increase if too small (assembler will crash if too small)
  40 };
  41 
  42 class aarch64 {
  43  friend class StubGenerator;
  44 
  45  private:
  46   static address _get_previous_fp_entry;
  47   static address _get_previous_sp_entry;
  48 
  49   static address _f2i_fixup;
  50   static address _f2l_fixup;
  51   static address _d2i_fixup;
  52   static address _d2l_fixup;
  53 
  54   static address _vector_iota_indices;
  55   static address _float_sign_mask;
  56   static address _float_sign_flip;
  57   static address _double_sign_mask;
  58   static address _double_sign_flip;
  59 
  60   static address _zero_blocks;
  61 
  62   static address _has_negatives;
  63   static address _has_negatives_long;
  64   static address _large_array_equals;
  65   static address _compare_long_string_LL;
  66   static address _compare_long_string_LU;
  67   static address _compare_long_string_UL;
  68   static address _compare_long_string_UU;
  69   static address _string_indexof_linear_ll;
  70   static address _string_indexof_linear_uu;
  71   static address _string_indexof_linear_ul;
  72   static address _large_byte_array_inflate;
  73   static bool _completed;
  74 


  85   }
  86 
  87   static address f2i_fixup()
  88   {
  89     return _f2i_fixup;
  90   }
  91 
  92   static address f2l_fixup()
  93   {
  94     return _f2l_fixup;
  95   }
  96 
  97   static address d2i_fixup()
  98   {
  99     return _d2i_fixup;
 100   }
 101 
 102   static address d2l_fixup()
 103   {
 104     return _d2l_fixup;
 105   }
 106 
 107   static address vector_iota_indices() {
 108     return _vector_iota_indices;
 109   }
 110 
 111   static address float_sign_mask()
 112   {
 113     return _float_sign_mask;
 114   }
 115 
 116   static address float_sign_flip()
 117   {
 118     return _float_sign_flip;
 119   }
 120 
 121   static address double_sign_mask()
 122   {
 123     return _double_sign_mask;
 124   }
 125 
 126   static address double_sign_flip()
 127   {
 128     return _double_sign_flip;


< prev index next >