From cb6702ad5f245b3da32020eb1a697b1e1dd2db80 Mon Sep 17 00:00:00 2001 From: Force Charlie Date: Mon, 5 Oct 2020 11:04:00 +0800 Subject: [PATCH] Fix compile phmap failed in windows-arm64 --- examples/insert_bench.cc | 1 + parallel_hashmap/phmap.h | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/examples/insert_bench.cc b/examples/insert_bench.cc index 5dfb0a1..9d6154b 100644 --- a/examples/insert_bench.cc +++ b/examples/insert_bench.cc @@ -65,6 +65,7 @@ public: uint64_t l = umul128(operator()(), boundExcluded, &h); return h; #endif + return 0; } std::array state() const { diff --git a/parallel_hashmap/phmap.h b/parallel_hashmap/phmap.h index 2b093c3..438a0af 100644 --- a/parallel_hashmap/phmap.h +++ b/parallel_hashmap/phmap.h @@ -1600,7 +1600,7 @@ public: // specific benchmarks indicating its importance. void prefetch_hash(size_t hash) const { (void)hash; -#if defined(_MSC_VER) +#if defined(_MSC_VER) && (defined(_M_X64) || defined(_M_IX86)) auto seq = probe(hash); _mm_prefetch((const char *)(ctrl_ + seq.offset()), _MM_HINT_NTA); _mm_prefetch((const char *)(slots_ + seq.offset()), _MM_HINT_NTA);