< prev index next >

src/share/vm/classfile/vmSymbols.cpp

Print this page




 338   case vmIntrinsics::_doubleToRawLongBits:
 339   case vmIntrinsics::_longBitsToDouble:
 340   case vmIntrinsics::_getClass:
 341   case vmIntrinsics::_isInstance:
 342   case vmIntrinsics::_currentThread:
 343   case vmIntrinsics::_dabs:
 344   case vmIntrinsics::_dsqrt:
 345   case vmIntrinsics::_dsin:
 346   case vmIntrinsics::_dcos:
 347   case vmIntrinsics::_dtan:
 348   case vmIntrinsics::_dlog:
 349   case vmIntrinsics::_dlog10:
 350   case vmIntrinsics::_dexp:
 351   case vmIntrinsics::_dpow:
 352   case vmIntrinsics::_checkIndex:
 353   case vmIntrinsics::_Reference_get:
 354   case vmIntrinsics::_updateCRC32:
 355   case vmIntrinsics::_updateBytesCRC32:
 356   case vmIntrinsics::_updateByteBufferCRC32:
 357   case vmIntrinsics::_vectorizedMismatch:


 358     return true;
 359   default:
 360     return false;
 361   }
 362 }
 363 
 364 bool vmIntrinsics::can_trap(vmIntrinsics::ID id) {
 365   assert(id != vmIntrinsics::_none, "must be a VM intrinsic");
 366   switch(id) {
 367 #ifdef TRACE_HAVE_INTRINSICS
 368   case vmIntrinsics::_counterTime:
 369 #endif
 370   case vmIntrinsics::_currentTimeMillis:
 371   case vmIntrinsics::_nanoTime:
 372   case vmIntrinsics::_floatToRawIntBits:
 373   case vmIntrinsics::_intBitsToFloat:
 374   case vmIntrinsics::_doubleToRawLongBits:
 375   case vmIntrinsics::_longBitsToDouble:
 376   case vmIntrinsics::_currentThread:
 377   case vmIntrinsics::_dabs:
 378   case vmIntrinsics::_dsqrt:
 379   case vmIntrinsics::_dsin:
 380   case vmIntrinsics::_dcos:
 381   case vmIntrinsics::_dtan:
 382   case vmIntrinsics::_dlog:
 383   case vmIntrinsics::_dlog10:
 384   case vmIntrinsics::_dexp:
 385   case vmIntrinsics::_dpow:
 386   case vmIntrinsics::_updateCRC32:
 387   case vmIntrinsics::_updateBytesCRC32:
 388   case vmIntrinsics::_updateByteBufferCRC32:
 389   case vmIntrinsics::_vectorizedMismatch:


 390     return false;
 391   default:
 392     return true;
 393   }
 394 }
 395 
 396 bool vmIntrinsics::does_virtual_dispatch(vmIntrinsics::ID id) {
 397   assert(id != vmIntrinsics::_none, "must be a VM intrinsic");
 398   switch(id) {
 399   case vmIntrinsics::_hashCode:
 400   case vmIntrinsics::_clone:
 401     return true;
 402     break;
 403   default:
 404     return false;
 405   }
 406 }
 407 
 408 int vmIntrinsics::predicates_needed(vmIntrinsics::ID id) {
 409   assert(id != vmIntrinsics::_none, "must be a VM intrinsic");


 517     break;
 518   case vmIntrinsics::_floatToRawIntBits:
 519   case vmIntrinsics::_intBitsToFloat:
 520   case vmIntrinsics::_doubleToRawLongBits:
 521   case vmIntrinsics::_longBitsToDouble:
 522   case vmIntrinsics::_dabs:
 523   case vmIntrinsics::_dsqrt:
 524   case vmIntrinsics::_dsin:
 525   case vmIntrinsics::_dcos:
 526   case vmIntrinsics::_dtan:
 527   case vmIntrinsics::_dlog:
 528   case vmIntrinsics::_dexp:
 529   case vmIntrinsics::_dpow:
 530   case vmIntrinsics::_dlog10:
 531   case vmIntrinsics::_datan2:
 532   case vmIntrinsics::_min:
 533   case vmIntrinsics::_max:
 534   case vmIntrinsics::_floatToIntBits:
 535   case vmIntrinsics::_doubleToLongBits:
 536     if (!InlineMathNatives) return true;




 537     break;
 538   case vmIntrinsics::_arraycopy:
 539     if (!InlineArrayCopy) return true;
 540     break;
 541   case vmIntrinsics::_updateCRC32:
 542   case vmIntrinsics::_updateBytesCRC32:
 543   case vmIntrinsics::_updateByteBufferCRC32:
 544     if (!UseCRC32Intrinsics) return true;
 545     break;
 546   case vmIntrinsics::_getObject:
 547   case vmIntrinsics::_getBoolean:
 548   case vmIntrinsics::_getByte:
 549   case vmIntrinsics::_getShort:
 550   case vmIntrinsics::_getChar:
 551   case vmIntrinsics::_getInt:
 552   case vmIntrinsics::_getLong:
 553   case vmIntrinsics::_getFloat:
 554   case vmIntrinsics::_getDouble:
 555   case vmIntrinsics::_putObject:
 556   case vmIntrinsics::_putBoolean:




 338   case vmIntrinsics::_doubleToRawLongBits:
 339   case vmIntrinsics::_longBitsToDouble:
 340   case vmIntrinsics::_getClass:
 341   case vmIntrinsics::_isInstance:
 342   case vmIntrinsics::_currentThread:
 343   case vmIntrinsics::_dabs:
 344   case vmIntrinsics::_dsqrt:
 345   case vmIntrinsics::_dsin:
 346   case vmIntrinsics::_dcos:
 347   case vmIntrinsics::_dtan:
 348   case vmIntrinsics::_dlog:
 349   case vmIntrinsics::_dlog10:
 350   case vmIntrinsics::_dexp:
 351   case vmIntrinsics::_dpow:
 352   case vmIntrinsics::_checkIndex:
 353   case vmIntrinsics::_Reference_get:
 354   case vmIntrinsics::_updateCRC32:
 355   case vmIntrinsics::_updateBytesCRC32:
 356   case vmIntrinsics::_updateByteBufferCRC32:
 357   case vmIntrinsics::_vectorizedMismatch:
 358   case vmIntrinsics::_fmaD:
 359   case vmIntrinsics::_fmaF:
 360     return true;
 361   default:
 362     return false;
 363   }
 364 }
 365 
 366 bool vmIntrinsics::can_trap(vmIntrinsics::ID id) {
 367   assert(id != vmIntrinsics::_none, "must be a VM intrinsic");
 368   switch(id) {
 369 #ifdef TRACE_HAVE_INTRINSICS
 370   case vmIntrinsics::_counterTime:
 371 #endif
 372   case vmIntrinsics::_currentTimeMillis:
 373   case vmIntrinsics::_nanoTime:
 374   case vmIntrinsics::_floatToRawIntBits:
 375   case vmIntrinsics::_intBitsToFloat:
 376   case vmIntrinsics::_doubleToRawLongBits:
 377   case vmIntrinsics::_longBitsToDouble:
 378   case vmIntrinsics::_currentThread:
 379   case vmIntrinsics::_dabs:
 380   case vmIntrinsics::_dsqrt:
 381   case vmIntrinsics::_dsin:
 382   case vmIntrinsics::_dcos:
 383   case vmIntrinsics::_dtan:
 384   case vmIntrinsics::_dlog:
 385   case vmIntrinsics::_dlog10:
 386   case vmIntrinsics::_dexp:
 387   case vmIntrinsics::_dpow:
 388   case vmIntrinsics::_updateCRC32:
 389   case vmIntrinsics::_updateBytesCRC32:
 390   case vmIntrinsics::_updateByteBufferCRC32:
 391   case vmIntrinsics::_vectorizedMismatch:
 392   case vmIntrinsics::_fmaD:
 393   case vmIntrinsics::_fmaF:
 394     return false;
 395   default:
 396     return true;
 397   }
 398 }
 399 
 400 bool vmIntrinsics::does_virtual_dispatch(vmIntrinsics::ID id) {
 401   assert(id != vmIntrinsics::_none, "must be a VM intrinsic");
 402   switch(id) {
 403   case vmIntrinsics::_hashCode:
 404   case vmIntrinsics::_clone:
 405     return true;
 406     break;
 407   default:
 408     return false;
 409   }
 410 }
 411 
 412 int vmIntrinsics::predicates_needed(vmIntrinsics::ID id) {
 413   assert(id != vmIntrinsics::_none, "must be a VM intrinsic");


 521     break;
 522   case vmIntrinsics::_floatToRawIntBits:
 523   case vmIntrinsics::_intBitsToFloat:
 524   case vmIntrinsics::_doubleToRawLongBits:
 525   case vmIntrinsics::_longBitsToDouble:
 526   case vmIntrinsics::_dabs:
 527   case vmIntrinsics::_dsqrt:
 528   case vmIntrinsics::_dsin:
 529   case vmIntrinsics::_dcos:
 530   case vmIntrinsics::_dtan:
 531   case vmIntrinsics::_dlog:
 532   case vmIntrinsics::_dexp:
 533   case vmIntrinsics::_dpow:
 534   case vmIntrinsics::_dlog10:
 535   case vmIntrinsics::_datan2:
 536   case vmIntrinsics::_min:
 537   case vmIntrinsics::_max:
 538   case vmIntrinsics::_floatToIntBits:
 539   case vmIntrinsics::_doubleToLongBits:
 540     if (!InlineMathNatives) return true;
 541     break;
 542   case vmIntrinsics::_fmaD:
 543   case vmIntrinsics::_fmaF:
 544     if (!InlineMathNatives || !UseFMA) return true;
 545     break;
 546   case vmIntrinsics::_arraycopy:
 547     if (!InlineArrayCopy) return true;
 548     break;
 549   case vmIntrinsics::_updateCRC32:
 550   case vmIntrinsics::_updateBytesCRC32:
 551   case vmIntrinsics::_updateByteBufferCRC32:
 552     if (!UseCRC32Intrinsics) return true;
 553     break;
 554   case vmIntrinsics::_getObject:
 555   case vmIntrinsics::_getBoolean:
 556   case vmIntrinsics::_getByte:
 557   case vmIntrinsics::_getShort:
 558   case vmIntrinsics::_getChar:
 559   case vmIntrinsics::_getInt:
 560   case vmIntrinsics::_getLong:
 561   case vmIntrinsics::_getFloat:
 562   case vmIntrinsics::_getDouble:
 563   case vmIntrinsics::_putObject:
 564   case vmIntrinsics::_putBoolean:


< prev index next >