src/cpu/x86/vm/vm_version_x86.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File 8130120 Sdiff src/cpu/x86/vm

src/cpu/x86/vm/vm_version_x86.cpp

Print this page




 675     if (!FLAG_IS_DEFAULT(UseAESIntrinsics))
 676       warning("AES intrinsics are not available on this CPU");
 677     FLAG_SET_DEFAULT(UseAESIntrinsics, false);
 678   }
 679 
 680   // GHASH/GCM intrinsics
 681   if (UseCLMUL && (UseSSE > 2)) {
 682     if (FLAG_IS_DEFAULT(UseGHASHIntrinsics)) {
 683       UseGHASHIntrinsics = true;
 684     }
 685   } else if (UseGHASHIntrinsics) {
 686     if (!FLAG_IS_DEFAULT(UseGHASHIntrinsics))
 687       warning("GHASH intrinsic requires CLMUL and SSE2 instructions on this CPU");
 688     FLAG_SET_DEFAULT(UseGHASHIntrinsics, false);
 689   }
 690 
 691   if (UseSHA) {
 692     warning("SHA instructions are not available on this CPU");
 693     FLAG_SET_DEFAULT(UseSHA, false);
 694   }
 695   if (UseSHA1Intrinsics || UseSHA256Intrinsics || UseSHA512Intrinsics) {
 696     warning("SHA intrinsics are not available on this CPU");

 697     FLAG_SET_DEFAULT(UseSHA1Intrinsics, false);




 698     FLAG_SET_DEFAULT(UseSHA256Intrinsics, false);




 699     FLAG_SET_DEFAULT(UseSHA512Intrinsics, false);
 700   }
 701 
 702   if (UseCRC32CIntrinsics) {
 703     if (!FLAG_IS_DEFAULT(UseCRC32CIntrinsics))
 704       warning("CRC32C intrinsics are not available on this CPU");
 705     FLAG_SET_DEFAULT(UseCRC32CIntrinsics, false);
 706   }
 707 
 708   // Adjust RTM (Restricted Transactional Memory) flags
 709   if (!supports_rtm() && UseRTMLocking) {
 710     // Can't continue because UseRTMLocking affects UseBiasedLocking flag
 711     // setting during arguments processing. See use_biased_locking().
 712     // VM_Version_init() is executed after UseBiasedLocking is used
 713     // in Thread::allocate().
 714     vm_exit_during_initialization("RTM instructions are not available on this CPU");
 715   }
 716 
 717 #if INCLUDE_RTM_OPT
 718   if (UseRTMLocking) {




 675     if (!FLAG_IS_DEFAULT(UseAESIntrinsics))
 676       warning("AES intrinsics are not available on this CPU");
 677     FLAG_SET_DEFAULT(UseAESIntrinsics, false);
 678   }
 679 
 680   // GHASH/GCM intrinsics
 681   if (UseCLMUL && (UseSSE > 2)) {
 682     if (FLAG_IS_DEFAULT(UseGHASHIntrinsics)) {
 683       UseGHASHIntrinsics = true;
 684     }
 685   } else if (UseGHASHIntrinsics) {
 686     if (!FLAG_IS_DEFAULT(UseGHASHIntrinsics))
 687       warning("GHASH intrinsic requires CLMUL and SSE2 instructions on this CPU");
 688     FLAG_SET_DEFAULT(UseGHASHIntrinsics, false);
 689   }
 690 
 691   if (UseSHA) {
 692     warning("SHA instructions are not available on this CPU");
 693     FLAG_SET_DEFAULT(UseSHA, false);
 694   }
 695 
 696   if (UseSHA1Intrinsics) {
 697     warning("Intrinsics for SHA-1 crypto hash functions not available.");
 698     FLAG_SET_DEFAULT(UseSHA1Intrinsics, false);
 699   }
 700 
 701   if (UseSHA256Intrinsics) {
 702     warning("Intrinsics for SHA-224 and SHA-256 crypto hash functions not available.");
 703     FLAG_SET_DEFAULT(UseSHA256Intrinsics, false);
 704   }
 705 
 706   if (UseSHA512Intrinsics) {
 707     warning("Intrinsics for SHA-384 and SHA-512 crypto hash functions not available.");
 708     FLAG_SET_DEFAULT(UseSHA512Intrinsics, false);
 709   }
 710 
 711   if (UseCRC32CIntrinsics) {
 712     if (!FLAG_IS_DEFAULT(UseCRC32CIntrinsics))
 713       warning("CRC32C intrinsics are not available on this CPU");
 714     FLAG_SET_DEFAULT(UseCRC32CIntrinsics, false);
 715   }
 716 
 717   // Adjust RTM (Restricted Transactional Memory) flags
 718   if (!supports_rtm() && UseRTMLocking) {
 719     // Can't continue because UseRTMLocking affects UseBiasedLocking flag
 720     // setting during arguments processing. See use_biased_locking().
 721     // VM_Version_init() is executed after UseBiasedLocking is used
 722     // in Thread::allocate().
 723     vm_exit_during_initialization("RTM instructions are not available on this CPU");
 724   }
 725 
 726 #if INCLUDE_RTM_OPT
 727   if (UseRTMLocking) {


src/cpu/x86/vm/vm_version_x86.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File