121 static juint* _crc32c_table; 122 // swap mask for ghash 123 static address _ghash_long_swap_mask_addr; 124 static address _ghash_byte_swap_mask_addr; 125 126 // upper word mask for sha1 127 static address _upper_word_mask_addr; 128 // byte flip mask for sha1 129 static address _shuffle_byte_flip_mask_addr; 130 131 //k256 table for sha256 132 static juint _k256[]; 133 static address _k256_adr; 134 #ifdef _LP64 135 static juint _k256_W[]; 136 static address _k256_W_adr; 137 static julong _k512_W[]; 138 static address _k512_W_addr; 139 // byte flip mask for sha512 140 static address _pshuffle_byte_flip_mask_addr_sha512; 141 #endif 142 // byte flip mask for sha256 143 static address _pshuffle_byte_flip_mask_addr; 144 145 //tables common for LIBM sin and cos 146 static juint _ONEHALF[]; 147 static address _ONEHALF_adr; 148 static juint _P_2[]; 149 static address _P_2_adr; 150 static juint _SC_4[]; 151 static address _SC_4_adr; 152 static juint _Ctable[]; 153 static address _Ctable_adr; 154 static juint _SC_2[]; 155 static address _SC_2_adr; 156 static juint _SC_3[]; 157 static address _SC_3_adr; 158 static juint _SC_1[]; 159 static address _SC_1_adr; 160 static juint _PI_INV_TABLE[]; 181 static address _Pi4x3_adr; 182 static juint _Pi4x4[]; 183 static address _Pi4x4_adr; 184 static juint _ones[]; 185 static address _ones_adr; 186 187 public: 188 static address verify_mxcsr_entry() { return _verify_mxcsr_entry; } 189 static address key_shuffle_mask_addr() { return _key_shuffle_mask_addr; } 190 static address counter_shuffle_mask_addr() { return _counter_shuffle_mask_addr; } 191 static address crc_by128_masks_addr() { return (address)_crc_by128_masks; } 192 static address ghash_long_swap_mask_addr() { return _ghash_long_swap_mask_addr; } 193 static address ghash_byte_swap_mask_addr() { return _ghash_byte_swap_mask_addr; } 194 static address upper_word_mask_addr() { return _upper_word_mask_addr; } 195 static address shuffle_byte_flip_mask_addr() { return _shuffle_byte_flip_mask_addr; } 196 static address k256_addr() { return _k256_adr; } 197 #ifdef _LP64 198 static address k256_W_addr() { return _k256_W_adr; } 199 static address k512_W_addr() { return _k512_W_addr; } 200 static address pshuffle_byte_flip_mask_addr_sha512() { return _pshuffle_byte_flip_mask_addr_sha512; } 201 #endif 202 static address pshuffle_byte_flip_mask_addr() { return _pshuffle_byte_flip_mask_addr; } 203 static void generate_CRC32C_table(bool is_pclmulqdq_supported); 204 static address _ONEHALF_addr() { return _ONEHALF_adr; } 205 static address _P_2_addr() { return _P_2_adr; } 206 static address _SC_4_addr() { return _SC_4_adr; } 207 static address _Ctable_addr() { return _Ctable_adr; } 208 static address _SC_2_addr() { return _SC_2_adr; } 209 static address _SC_3_addr() { return _SC_3_adr; } 210 static address _SC_1_addr() { return _SC_1_adr; } 211 static address _PI_INV_TABLE_addr() { return _PI_INV_TABLE_adr; } 212 static address _PI_4_addr() { return _PI_4_adr; } 213 static address _PI32INV_addr() { return _PI32INV_adr; } 214 static address _SIGN_MASK_addr() { return _SIGN_MASK_adr; } 215 static address _P_1_addr() { return _P_1_adr; } 216 static address _P_3_addr() { return _P_3_adr; } 217 static address _NEG_ZERO_addr() { return _NEG_ZERO_adr; } 218 static address _L_2il0floatpacket_0_addr() { return _L_2il0floatpacket_0_adr; } 219 static address _Pi4Inv_addr() { return _Pi4Inv_adr; } 220 static address _Pi4x3_addr() { return _Pi4x3_adr; } | 121 static juint* _crc32c_table; 122 // swap mask for ghash 123 static address _ghash_long_swap_mask_addr; 124 static address _ghash_byte_swap_mask_addr; 125 126 // upper word mask for sha1 127 static address _upper_word_mask_addr; 128 // byte flip mask for sha1 129 static address _shuffle_byte_flip_mask_addr; 130 131 //k256 table for sha256 132 static juint _k256[]; 133 static address _k256_adr; 134 #ifdef _LP64 135 static juint _k256_W[]; 136 static address _k256_W_adr; 137 static julong _k512_W[]; 138 static address _k512_W_addr; 139 // byte flip mask for sha512 140 static address _pshuffle_byte_flip_mask_addr_sha512; 141 // Masks for base64 142 static address _base64_charset; 143 static address _bswap_mask; 144 static address _gather_mask; 145 static address _right_shift_mask; 146 static address _left_shift_mask; 147 static address _and_mask; 148 static address _url_charset; 149 #endif 150 // byte flip mask for sha256 151 static address _pshuffle_byte_flip_mask_addr; 152 153 //tables common for LIBM sin and cos 154 static juint _ONEHALF[]; 155 static address _ONEHALF_adr; 156 static juint _P_2[]; 157 static address _P_2_adr; 158 static juint _SC_4[]; 159 static address _SC_4_adr; 160 static juint _Ctable[]; 161 static address _Ctable_adr; 162 static juint _SC_2[]; 163 static address _SC_2_adr; 164 static juint _SC_3[]; 165 static address _SC_3_adr; 166 static juint _SC_1[]; 167 static address _SC_1_adr; 168 static juint _PI_INV_TABLE[]; 189 static address _Pi4x3_adr; 190 static juint _Pi4x4[]; 191 static address _Pi4x4_adr; 192 static juint _ones[]; 193 static address _ones_adr; 194 195 public: 196 static address verify_mxcsr_entry() { return _verify_mxcsr_entry; } 197 static address key_shuffle_mask_addr() { return _key_shuffle_mask_addr; } 198 static address counter_shuffle_mask_addr() { return _counter_shuffle_mask_addr; } 199 static address crc_by128_masks_addr() { return (address)_crc_by128_masks; } 200 static address ghash_long_swap_mask_addr() { return _ghash_long_swap_mask_addr; } 201 static address ghash_byte_swap_mask_addr() { return _ghash_byte_swap_mask_addr; } 202 static address upper_word_mask_addr() { return _upper_word_mask_addr; } 203 static address shuffle_byte_flip_mask_addr() { return _shuffle_byte_flip_mask_addr; } 204 static address k256_addr() { return _k256_adr; } 205 #ifdef _LP64 206 static address k256_W_addr() { return _k256_W_adr; } 207 static address k512_W_addr() { return _k512_W_addr; } 208 static address pshuffle_byte_flip_mask_addr_sha512() { return _pshuffle_byte_flip_mask_addr_sha512; } 209 static address base64_charset_addr() { return _base64_charset; } 210 static address base64url_charset_addr() { return _url_charset; } 211 static address base64_bswap_mask_addr() { return _bswap_mask; } 212 static address base64_gather_mask_addr() { return _gather_mask; } 213 static address base64_right_shift_mask_addr() { return _right_shift_mask; } 214 static address base64_left_shift_mask_addr() { return _left_shift_mask; } 215 static address base64_and_mask_addr() { return _and_mask; } 216 #endif 217 static address pshuffle_byte_flip_mask_addr() { return _pshuffle_byte_flip_mask_addr; } 218 static void generate_CRC32C_table(bool is_pclmulqdq_supported); 219 static address _ONEHALF_addr() { return _ONEHALF_adr; } 220 static address _P_2_addr() { return _P_2_adr; } 221 static address _SC_4_addr() { return _SC_4_adr; } 222 static address _Ctable_addr() { return _Ctable_adr; } 223 static address _SC_2_addr() { return _SC_2_adr; } 224 static address _SC_3_addr() { return _SC_3_adr; } 225 static address _SC_1_addr() { return _SC_1_adr; } 226 static address _PI_INV_TABLE_addr() { return _PI_INV_TABLE_adr; } 227 static address _PI_4_addr() { return _PI_4_adr; } 228 static address _PI32INV_addr() { return _PI32INV_adr; } 229 static address _SIGN_MASK_addr() { return _SIGN_MASK_adr; } 230 static address _P_1_addr() { return _P_1_adr; } 231 static address _P_3_addr() { return _P_3_adr; } 232 static address _NEG_ZERO_addr() { return _NEG_ZERO_adr; } 233 static address _L_2il0floatpacket_0_addr() { return _L_2il0floatpacket_0_adr; } 234 static address _Pi4Inv_addr() { return _Pi4Inv_adr; } 235 static address _Pi4x3_addr() { return _Pi4x3_adr; } |