From d59eabb1219bd7c0585e4e86fe9147473c703f33 Mon Sep 17 00:00:00 2001 From: Chris Kennelly Date: Thu, 26 Oct 2023 08:43:56 -0700 Subject: Prefer builtin to inline assembly when built with -mprfchw. PiperOrigin-RevId: 576884571 Change-Id: I7bfe68e5aedd8563f8e6dbdb5d7cc66e9af22567 --- absl/base/prefetch.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'absl/base') diff --git a/absl/base/prefetch.h b/absl/base/prefetch.h index 609e26e7..98b3bf96 100644 --- a/absl/base/prefetch.h +++ b/absl/base/prefetch.h @@ -157,7 +157,7 @@ ABSL_ATTRIBUTE_ALWAYS_INLINE inline void PrefetchToLocalCacheForWrite( // unless -march=broadwell or newer; this is not generally the default, so we // manually emit prefetchw. PREFETCHW is recognized as a no-op on older Intel // processors and has been present on AMD processors since the K6-2. -#if defined(__x86_64__) +#if defined(__x86_64__) && !defined(__PRFCHW__) asm("prefetchw %0" : : "m"(*reinterpret_cast(addr))); #else __builtin_prefetch(addr, 1, 3); -- cgit v1.2.3