diff -r c765af1b93c9 -r 7efea6fae96b hotspot/src/cpu/ppc/vm/vm_version_ppc.cpp --- a/hotspot/src/cpu/ppc/vm/vm_version_ppc.cpp Wed Jul 15 16:05:53 2015 +0000 +++ b/hotspot/src/cpu/ppc/vm/vm_version_ppc.cpp Mon Jul 13 09:44:38 2015 +0200 @@ -159,10 +159,18 @@ assert(AllocatePrefetchStyle >= 0, "AllocatePrefetchStyle should be positive"); - if (UseCRC32Intrinsics) { - if (!FLAG_IS_DEFAULT(UseCRC32Intrinsics)) - warning("CRC32 intrinsics are not available on this CPU"); - FLAG_SET_DEFAULT(UseCRC32Intrinsics, false); + // Implementation does not use any of the vector instructions + // available with Power8. Their exploitation is still pending. + if (!UseCRC32Intrinsics) { + if (FLAG_IS_DEFAULT(UseCRC32Intrinsics)) { + FLAG_SET_DEFAULT(UseCRC32Intrinsics, true); + } + } + + if (UseCRC32CIntrinsics) { + if (!FLAG_IS_DEFAULT(UseCRC32CIntrinsics)) + warning("CRC32C intrinsics are not available on this CPU"); + FLAG_SET_DEFAULT(UseCRC32CIntrinsics, false); } // The AES intrinsic stubs require AES instruction support. @@ -192,12 +200,6 @@ FLAG_SET_DEFAULT(UseSHA512Intrinsics, false); } - if (UseCRC32CIntrinsics) { - if (!FLAG_IS_DEFAULT(UseCRC32CIntrinsics)) - warning("CRC32C intrinsics are not available on this CPU"); - FLAG_SET_DEFAULT(UseCRC32CIntrinsics, false); - } - if (FLAG_IS_DEFAULT(UseMultiplyToLenIntrinsic)) { UseMultiplyToLenIntrinsic = true; }