215 } else if (UseSHA) {
216 warning("SHA instructions are not available on this CPU");
217 FLAG_SET_DEFAULT(UseSHA, false);
218 }
219
220 if (UseSHA && (auxv & HWCAP_SHA1)) {
221 if (FLAG_IS_DEFAULT(UseSHA1Intrinsics)) {
222 FLAG_SET_DEFAULT(UseSHA1Intrinsics, true);
223 }
224 } else if (UseSHA1Intrinsics) {
225 warning("Intrinsics for SHA-1 crypto hash functions not available on this CPU.");
226 FLAG_SET_DEFAULT(UseSHA1Intrinsics, false);
227 }
228
229 if (UseSHA && (auxv & HWCAP_SHA2)) {
230 if (FLAG_IS_DEFAULT(UseSHA256Intrinsics)) {
231 FLAG_SET_DEFAULT(UseSHA256Intrinsics, true);
232 }
233 } else if (UseSHA256Intrinsics) {
234 warning("Intrinsics for SHA-224 and SHA-256 crypto hash functions not available on this CPU.");
235 FLAG_SET_DEFAULT(UseSHA1Intrinsics, false);
236 }
237
238 if (UseSHA512Intrinsics) {
239 warning("Intrinsics for SHA-384 and SHA-512 crypto hash functions not available on this CPU.");
240 FLAG_SET_DEFAULT(UseSHA512Intrinsics, false);
241 }
242
243 if (!(UseSHA1Intrinsics || UseSHA256Intrinsics || UseSHA512Intrinsics)) {
244 FLAG_SET_DEFAULT(UseSHA, false);
245 }
246
247 // This machine allows unaligned memory accesses
248 if (FLAG_IS_DEFAULT(UseUnalignedAccesses)) {
249 FLAG_SET_DEFAULT(UseUnalignedAccesses, true);
250 }
251
252 if (FLAG_IS_DEFAULT(UseMultiplyToLenIntrinsic)) {
253 UseMultiplyToLenIntrinsic = true;
254 }
255
|
215 } else if (UseSHA) {
216 warning("SHA instructions are not available on this CPU");
217 FLAG_SET_DEFAULT(UseSHA, false);
218 }
219
220 if (UseSHA && (auxv & HWCAP_SHA1)) {
221 if (FLAG_IS_DEFAULT(UseSHA1Intrinsics)) {
222 FLAG_SET_DEFAULT(UseSHA1Intrinsics, true);
223 }
224 } else if (UseSHA1Intrinsics) {
225 warning("Intrinsics for SHA-1 crypto hash functions not available on this CPU.");
226 FLAG_SET_DEFAULT(UseSHA1Intrinsics, false);
227 }
228
229 if (UseSHA && (auxv & HWCAP_SHA2)) {
230 if (FLAG_IS_DEFAULT(UseSHA256Intrinsics)) {
231 FLAG_SET_DEFAULT(UseSHA256Intrinsics, true);
232 }
233 } else if (UseSHA256Intrinsics) {
234 warning("Intrinsics for SHA-224 and SHA-256 crypto hash functions not available on this CPU.");
235 FLAG_SET_DEFAULT(UseSHA256Intrinsics, false);
236 }
237
238 if (UseSHA512Intrinsics) {
239 warning("Intrinsics for SHA-384 and SHA-512 crypto hash functions not available on this CPU.");
240 FLAG_SET_DEFAULT(UseSHA512Intrinsics, false);
241 }
242
243 if (!(UseSHA1Intrinsics || UseSHA256Intrinsics || UseSHA512Intrinsics)) {
244 FLAG_SET_DEFAULT(UseSHA, false);
245 }
246
247 // This machine allows unaligned memory accesses
248 if (FLAG_IS_DEFAULT(UseUnalignedAccesses)) {
249 FLAG_SET_DEFAULT(UseUnalignedAccesses, true);
250 }
251
252 if (FLAG_IS_DEFAULT(UseMultiplyToLenIntrinsic)) {
253 UseMultiplyToLenIntrinsic = true;
254 }
255
|