196 static address _sha512_implCompress; 197 static address _sha512_implCompressMB; 198 199 static address _updateBytesCRC32; 200 static address _crc_table_adr; 201 202 static address _crc32c_table_addr; 203 static address _updateBytesCRC32C; 204 static address _updateBytesAdler32; 205 206 static address _multiplyToLen; 207 static address _squareToLen; 208 static address _mulAdd; 209 static address _montgomeryMultiply; 210 static address _montgomerySquare; 211 212 static address _vectorizedMismatch; 213 214 static address _dexp; 215 static address _dlog; 216 static address _dpow; 217 static address _dsin; 218 static address _dcos; 219 static address _dlibm_sin_cos_huge; 220 static address _dlibm_reduce_pi04l; 221 222 // These are versions of the java.lang.Math methods which perform 223 // the same operations as the intrinsic version. They are used for 224 // constant folding in the compiler to ensure equivalence. If the 225 // intrinsic version returns the same result as the strict version 226 // then they can be set to the appropriate function from 227 // SharedRuntime. 228 static double (*_intrinsic_log10)(double); 229 static double (*_intrinsic_pow)(double, double); 230 static double (*_intrinsic_sin)(double); 231 static double (*_intrinsic_cos)(double); 232 static double (*_intrinsic_tan)(double); 233 234 // Safefetch stubs. 235 static address _safefetch32_entry; 236 static address _safefetch32_fault_pc; 237 static address _safefetch32_continuation_pc; 238 static address _safefetchN_entry; 239 static address _safefetchN_fault_pc; 240 static address _safefetchN_continuation_pc; 374 static address sha512_implCompress() { return _sha512_implCompress; } 375 static address sha512_implCompressMB() { return _sha512_implCompressMB; } 376 377 static address updateBytesCRC32() { return _updateBytesCRC32; } 378 static address crc_table_addr() { return _crc_table_adr; } 379 380 static address crc32c_table_addr() { return _crc32c_table_addr; } 381 static address updateBytesCRC32C() { return _updateBytesCRC32C; } 382 static address updateBytesAdler32() { return _updateBytesAdler32; } 383 384 static address multiplyToLen() {return _multiplyToLen; } 385 static address squareToLen() {return _squareToLen; } 386 static address mulAdd() {return _mulAdd; } 387 static address montgomeryMultiply() { return _montgomeryMultiply; } 388 static address montgomerySquare() { return _montgomerySquare; } 389 390 static address vectorizedMismatch() { return _vectorizedMismatch; } 391 392 static address dexp() { return _dexp; } 393 static address dlog() { return _dlog; } 394 static address dpow() { return _dpow; } 395 static address dsin() { return _dsin; } 396 static address dcos() { return _dcos; } 397 static address dlibm_reduce_pi04l() { return _dlibm_reduce_pi04l; } 398 static address dlibm_sin_cos_huge() { return _dlibm_sin_cos_huge; } 399 400 static address select_fill_function(BasicType t, bool aligned, const char* &name); 401 402 static address zero_aligned_words() { return _zero_aligned_words; } 403 404 static double intrinsic_log10(double d) { 405 assert(_intrinsic_log10 != NULL, "must be defined"); 406 return _intrinsic_log10(d); 407 } 408 static double intrinsic_pow(double d, double d2) { 409 assert(_intrinsic_pow != NULL, "must be defined"); 410 return _intrinsic_pow(d, d2); 411 } 412 static double intrinsic_sin(double d) { 413 assert(_intrinsic_sin != NULL, "must be defined"); 414 return _intrinsic_sin(d); 415 } 416 static double intrinsic_cos(double d) { 417 assert(_intrinsic_cos != NULL, "must be defined"); 418 return _intrinsic_cos(d); | 196 static address _sha512_implCompress; 197 static address _sha512_implCompressMB; 198 199 static address _updateBytesCRC32; 200 static address _crc_table_adr; 201 202 static address _crc32c_table_addr; 203 static address _updateBytesCRC32C; 204 static address _updateBytesAdler32; 205 206 static address _multiplyToLen; 207 static address _squareToLen; 208 static address _mulAdd; 209 static address _montgomeryMultiply; 210 static address _montgomerySquare; 211 212 static address _vectorizedMismatch; 213 214 static address _dexp; 215 static address _dlog; 216 static address _dlog10; 217 static address _dpow; 218 static address _dsin; 219 static address _dcos; 220 static address _dlibm_sin_cos_huge; 221 static address _dlibm_reduce_pi04l; 222 static address _dlibm_tan_cot_huge; 223 static address _dtan; 224 225 // These are versions of the java.lang.Math methods which perform 226 // the same operations as the intrinsic version. They are used for 227 // constant folding in the compiler to ensure equivalence. If the 228 // intrinsic version returns the same result as the strict version 229 // then they can be set to the appropriate function from 230 // SharedRuntime. 231 static double (*_intrinsic_log10)(double); 232 static double (*_intrinsic_pow)(double, double); 233 static double (*_intrinsic_sin)(double); 234 static double (*_intrinsic_cos)(double); 235 static double (*_intrinsic_tan)(double); 236 237 // Safefetch stubs. 238 static address _safefetch32_entry; 239 static address _safefetch32_fault_pc; 240 static address _safefetch32_continuation_pc; 241 static address _safefetchN_entry; 242 static address _safefetchN_fault_pc; 243 static address _safefetchN_continuation_pc; 377 static address sha512_implCompress() { return _sha512_implCompress; } 378 static address sha512_implCompressMB() { return _sha512_implCompressMB; } 379 380 static address updateBytesCRC32() { return _updateBytesCRC32; } 381 static address crc_table_addr() { return _crc_table_adr; } 382 383 static address crc32c_table_addr() { return _crc32c_table_addr; } 384 static address updateBytesCRC32C() { return _updateBytesCRC32C; } 385 static address updateBytesAdler32() { return _updateBytesAdler32; } 386 387 static address multiplyToLen() {return _multiplyToLen; } 388 static address squareToLen() {return _squareToLen; } 389 static address mulAdd() {return _mulAdd; } 390 static address montgomeryMultiply() { return _montgomeryMultiply; } 391 static address montgomerySquare() { return _montgomerySquare; } 392 393 static address vectorizedMismatch() { return _vectorizedMismatch; } 394 395 static address dexp() { return _dexp; } 396 static address dlog() { return _dlog; } 397 static address dlog10() { return _dlog10; } 398 static address dpow() { return _dpow; } 399 static address dsin() { return _dsin; } 400 static address dcos() { return _dcos; } 401 static address dlibm_reduce_pi04l() { return _dlibm_reduce_pi04l; } 402 static address dlibm_sin_cos_huge() { return _dlibm_sin_cos_huge; } 403 static address dlibm_tan_cot_huge() { return _dlibm_tan_cot_huge; } 404 static address dtan() { return _dtan; } 405 406 static address select_fill_function(BasicType t, bool aligned, const char* &name); 407 408 static address zero_aligned_words() { return _zero_aligned_words; } 409 410 static double intrinsic_log10(double d) { 411 assert(_intrinsic_log10 != NULL, "must be defined"); 412 return _intrinsic_log10(d); 413 } 414 static double intrinsic_pow(double d, double d2) { 415 assert(_intrinsic_pow != NULL, "must be defined"); 416 return _intrinsic_pow(d, d2); 417 } 418 static double intrinsic_sin(double d) { 419 assert(_intrinsic_sin != NULL, "must be defined"); 420 return _intrinsic_sin(d); 421 } 422 static double intrinsic_cos(double d) { 423 assert(_intrinsic_cos != NULL, "must be defined"); 424 return _intrinsic_cos(d); |