124 static juint* _crc32c_table;
125 // swap mask for ghash
126 static address _ghash_long_swap_mask_addr;
127 static address _ghash_byte_swap_mask_addr;
128 static address _ghash_poly_addr;
129 static address _ghash_shuffmask_addr;
130
131 // upper word mask for sha1
132 static address _upper_word_mask_addr;
133 // byte flip mask for sha1
134 static address _shuffle_byte_flip_mask_addr;
135
136 //k256 table for sha256
137 static juint _k256[];
138 static address _k256_adr;
139 static address _vector_short_to_byte_mask;
140 static address _vector_float_sign_mask;
141 static address _vector_float_sign_flip;
142 static address _vector_double_sign_mask;
143 static address _vector_double_sign_flip;
144 static address _vector_byte_perm_mask;
145 static address _vector_long_sign_mask;
146 #ifdef _LP64
147 static juint _k256_W[];
148 static address _k256_W_adr;
149 static julong _k512_W[];
150 static address _k512_W_addr;
151 // byte flip mask for sha512
152 static address _pshuffle_byte_flip_mask_addr_sha512;
153 static address _counter_mask_addr;
154 // Masks for base64
155 static address _base64_charset;
156 static address _bswap_mask;
157 static address _gather_mask;
158 static address _right_shift_mask;
159 static address _left_shift_mask;
160 static address _and_mask;
161 static address _url_charset;
162 #endif
163 // byte flip mask for sha256
164 static address _pshuffle_byte_flip_mask_addr;
165
221
222 static address vector_short_to_byte_mask() {
223 return _vector_short_to_byte_mask;
224 }
225 static address vector_float_sign_mask() {
226 return _vector_float_sign_mask;
227 }
228
229 static address vector_float_sign_flip() {
230 return _vector_float_sign_flip;
231 }
232
233 static address vector_double_sign_mask() {
234 return _vector_double_sign_mask;
235 }
236
237 static address vector_double_sign_flip() {
238 return _vector_double_sign_flip;
239 }
240
241 static address vector_byte_perm_mask() {
242 return _vector_byte_perm_mask;
243 }
244
245 static address vector_long_sign_mask() {
246 return _vector_long_sign_mask;
247 }
248 #ifdef _LP64
249 static address k256_W_addr() { return _k256_W_adr; }
250 static address k512_W_addr() { return _k512_W_addr; }
251 static address pshuffle_byte_flip_mask_addr_sha512() { return _pshuffle_byte_flip_mask_addr_sha512; }
252 static address base64_charset_addr() { return _base64_charset; }
253 static address base64url_charset_addr() { return _url_charset; }
254 static address base64_bswap_mask_addr() { return _bswap_mask; }
255 static address base64_gather_mask_addr() { return _gather_mask; }
256 static address base64_right_shift_mask_addr() { return _right_shift_mask; }
257 static address base64_left_shift_mask_addr() { return _left_shift_mask; }
258 static address base64_and_mask_addr() { return _and_mask; }
259 static address counter_mask_addr() { return _counter_mask_addr; }
260 #endif
261 static address pshuffle_byte_flip_mask_addr() { return _pshuffle_byte_flip_mask_addr; }
262 static void generate_CRC32C_table(bool is_pclmulqdq_supported);
263 static address _ONEHALF_addr() { return _ONEHALF_adr; }
264 static address _P_2_addr() { return _P_2_adr; }
265 static address _SC_4_addr() { return _SC_4_adr; }
266 static address _Ctable_addr() { return _Ctable_adr; }
267 static address _SC_2_addr() { return _SC_2_adr; }
|
124 static juint* _crc32c_table;
125 // swap mask for ghash
126 static address _ghash_long_swap_mask_addr;
127 static address _ghash_byte_swap_mask_addr;
128 static address _ghash_poly_addr;
129 static address _ghash_shuffmask_addr;
130
131 // upper word mask for sha1
132 static address _upper_word_mask_addr;
133 // byte flip mask for sha1
134 static address _shuffle_byte_flip_mask_addr;
135
136 //k256 table for sha256
137 static juint _k256[];
138 static address _k256_adr;
139 static address _vector_short_to_byte_mask;
140 static address _vector_float_sign_mask;
141 static address _vector_float_sign_flip;
142 static address _vector_double_sign_mask;
143 static address _vector_double_sign_flip;
144 static address _vector_long_sign_mask;
145 static address _vector_all_bits_set;
146 static address _vector_byte_perm_mask;
147 static address _vector_int_to_byte_mask;
148 static address _vector_int_to_short_mask;
149 static address _vector_32_bit_mask;
150 static address _vector_64_bit_mask;
151 static address _vector_int_shuffle_mask;
152 static address _vector_short_shuffle_mask;
153 static address _vector_long_shuffle_mask;
154 static address _vector_iota_indices;
155 #ifdef _LP64
156 static juint _k256_W[];
157 static address _k256_W_adr;
158 static julong _k512_W[];
159 static address _k512_W_addr;
160 // byte flip mask for sha512
161 static address _pshuffle_byte_flip_mask_addr_sha512;
162 static address _counter_mask_addr;
163 // Masks for base64
164 static address _base64_charset;
165 static address _bswap_mask;
166 static address _gather_mask;
167 static address _right_shift_mask;
168 static address _left_shift_mask;
169 static address _and_mask;
170 static address _url_charset;
171 #endif
172 // byte flip mask for sha256
173 static address _pshuffle_byte_flip_mask_addr;
174
230
231 static address vector_short_to_byte_mask() {
232 return _vector_short_to_byte_mask;
233 }
234 static address vector_float_sign_mask() {
235 return _vector_float_sign_mask;
236 }
237
238 static address vector_float_sign_flip() {
239 return _vector_float_sign_flip;
240 }
241
242 static address vector_double_sign_mask() {
243 return _vector_double_sign_mask;
244 }
245
246 static address vector_double_sign_flip() {
247 return _vector_double_sign_flip;
248 }
249
250 static address vector_all_bits_set() {
251 return _vector_all_bits_set;
252 }
253
254 static address vector_byte_perm_mask() {
255 return _vector_byte_perm_mask;
256 }
257
258 static address vector_int_to_byte_mask() {
259 return _vector_int_to_byte_mask;
260 }
261
262 static address vector_int_to_short_mask() {
263 return _vector_int_to_short_mask;
264 }
265
266 static address vector_32_bit_mask() {
267 return _vector_32_bit_mask;
268 }
269
270 static address vector_64_bit_mask() {
271 return _vector_64_bit_mask;
272 }
273
274 static address vector_int_shuffle_mask() {
275 return _vector_int_shuffle_mask;
276 }
277
278 static address vector_short_shuffle_mask() {
279 return _vector_short_shuffle_mask;
280 }
281
282 static address vector_long_shuffle_mask() {
283 return _vector_long_shuffle_mask;
284 }
285
286 static address vector_long_sign_mask() {
287 return _vector_long_sign_mask;
288 }
289
290 static address vector_iota_indices() {
291 return _vector_iota_indices;
292 }
293
294 #ifdef _LP64
295 static address k256_W_addr() { return _k256_W_adr; }
296 static address k512_W_addr() { return _k512_W_addr; }
297 static address pshuffle_byte_flip_mask_addr_sha512() { return _pshuffle_byte_flip_mask_addr_sha512; }
298 static address base64_charset_addr() { return _base64_charset; }
299 static address base64url_charset_addr() { return _url_charset; }
300 static address base64_bswap_mask_addr() { return _bswap_mask; }
301 static address base64_gather_mask_addr() { return _gather_mask; }
302 static address base64_right_shift_mask_addr() { return _right_shift_mask; }
303 static address base64_left_shift_mask_addr() { return _left_shift_mask; }
304 static address base64_and_mask_addr() { return _and_mask; }
305 static address counter_mask_addr() { return _counter_mask_addr; }
306 #endif
307 static address pshuffle_byte_flip_mask_addr() { return _pshuffle_byte_flip_mask_addr; }
308 static void generate_CRC32C_table(bool is_pclmulqdq_supported);
309 static address _ONEHALF_addr() { return _ONEHALF_adr; }
310 static address _P_2_addr() { return _P_2_adr; }
311 static address _SC_4_addr() { return _SC_4_adr; }
312 static address _Ctable_addr() { return _Ctable_adr; }
313 static address _SC_2_addr() { return _SC_2_adr; }
|