diff --git a/quic/platform/api/quic_prefetch.h b/common/platform/api/quiche_prefetch.h
similarity index 75%
rename from quic/platform/api/quic_prefetch.h
rename to common/platform/api/quiche_prefetch.h
index 49dbe48..706a709 100644
--- a/quic/platform/api/quic_prefetch.h
+++ b/common/platform/api/quiche_prefetch.h
@@ -2,12 +2,12 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef QUICHE_QUIC_PLATFORM_API_QUIC_PREFETCH_H_
-#define QUICHE_QUIC_PLATFORM_API_QUIC_PREFETCH_H_
+#ifndef QUICHE_COMMON_PLATFORM_API_QUICHE_PREFETCH_H_
+#define QUICHE_COMMON_PLATFORM_API_QUICHE_PREFETCH_H_
 
-#include "net/quic/platform/impl/quic_prefetch_impl.h"
+#include "quiche_platform_impl/quiche_prefetch_impl.h"
 
-namespace quic {
+namespace quiche {
 
 // Move data into the cache before it is read, or "prefetch" it.
 //
@@ -30,10 +30,10 @@
 // performance, so use them only when representative benchmarks show
 // an improvement.
 
-inline void QuicPrefetchT0(const void* addr) {
-  return QuicPrefetchT0Impl(addr);
+inline void QuichePrefetchT0(const void* addr) {
+  return QuichePrefetchT0Impl(addr);
 }
 
-}  // namespace quic
+}  // namespace quiche
 
-#endif  // QUICHE_QUIC_PLATFORM_API_QUIC_PREFETCH_H_
+#endif  // QUICHE_COMMON_PLATFORM_API_QUICHE_PREFETCH_H_
diff --git a/common/platform/default/quiche_platform_impl/quiche_prefetch_impl.h b/common/platform/default/quiche_platform_impl/quiche_prefetch_impl.h
new file mode 100644
index 0000000..8945481
--- /dev/null
+++ b/common/platform/default/quiche_platform_impl/quiche_prefetch_impl.h
@@ -0,0 +1,28 @@
+// Copyright 2021 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef QUICHE_COMMON_PLATFORM_DEFAULT_QUICHE_PLATFORM_IMPL_QUICHE_PREFETCH_IMPL_H_
+#define QUICHE_COMMON_PLATFORM_DEFAULT_QUICHE_PLATFORM_IMPL_QUICHE_PREFETCH_IMPL_H_
+
+#if defined(_MSC_VER)
+#include <intrin.h>
+#endif
+
+namespace quiche {
+
+inline void QuichePrefetchT0Impl(const void* addr) {
+#if !defined(DISABLE_BUILTIN_PREFETCH)
+#if defined(__GNUC__) || (defined(_M_ARM64) && defined(__clang__))
+  __builtin_prefetch(addr, 0, 3);
+#elif defined(_MSC_VER)
+  _mm_prefetch(reinterpret_cast<const char*>(addr), _MM_HINT_T0);
+#else
+  (void*)addr;
+#endif
+#endif  // !defined(DISABLE_BUILTIN_PREFETCH)
+}
+
+}  // namespace quiche
+
+#endif  // QUICHE_COMMON_PLATFORM_DEFAULT_QUICHE_PLATFORM_IMPL_QUICHE_PREFETCH_IMPL_H_
diff --git a/quic/core/quic_utils.cc b/quic/core/quic_utils.cc
index 1a79dca..1f0137a 100644
--- a/quic/core/quic_utils.cc
+++ b/quic/core/quic_utils.cc
@@ -21,8 +21,8 @@
 #include "quic/platform/api/quic_bug_tracker.h"
 #include "quic/platform/api/quic_flag_utils.h"
 #include "quic/platform/api/quic_flags.h"
-#include "quic/platform/api/quic_prefetch.h"
 #include "common/platform/api/quiche_logging.h"
+#include "common/platform/api/quiche_prefetch.h"
 #include "common/quiche_endian.h"
 
 namespace quic {
@@ -266,9 +266,9 @@
     char* next_base = static_cast<char*>(iov[iovnum + 1].iov_base);
     // Prefetch 2 cachelines worth of data to get the prefetcher started; leave
     // it to the hardware prefetcher after that.
-    QuicPrefetchT0(next_base);
+    quiche::QuichePrefetchT0(next_base);
     if (iov[iovnum + 1].iov_len >= 64) {
-      QuicPrefetchT0(next_base + ABSL_CACHELINE_SIZE);
+      quiche::QuichePrefetchT0(next_base + ABSL_CACHELINE_SIZE);
     }
   }
 
