15#if defined(__cpp_lib_hardware_interference_size)
16 const size_t cache_line_size = std::hardware_destructive_interference_size;
22 const size_t cache_line_size = 64;
25 const uint8_t* array =
static_cast<const uint8_t*
>(arrayv);
27 volatile uint64_t combiner = 1;
29 for(
size_t idx = 0; idx < bytes; idx += cache_line_size) {
30#if BOTAN_COMPILER_HAS_BUILTIN(__builtin_prefetch)
32 __builtin_prefetch(&array[idx]);
35 combiner = combiner | array[idx];