summaryrefslogtreecommitdiff
path: root/boehm-gc/include/private/gcconfig.h
diff options
context:
space:
mode:
Diffstat (limited to 'boehm-gc/include/private/gcconfig.h')
-rw-r--r--boehm-gc/include/private/gcconfig.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/boehm-gc/include/private/gcconfig.h b/boehm-gc/include/private/gcconfig.h
index b07d4b9a18e..3ecbcdf5ffe 100644
--- a/boehm-gc/include/private/gcconfig.h
+++ b/boehm-gc/include/private/gcconfig.h
@@ -1667,10 +1667,10 @@
extern int etext[];
# define DATASTART ((ptr_t)((((word) (etext)) + 0xfff) & ~0xfff))
# endif
-# define PREFETCH(x) \
- __asm__ __volatile__ (" prefetch %0": : "m"(*(char *)(x)))
-# define PREFETCH_FOR_WRITE(x) \
- __asm__ __volatile__ (" prefetchw %0": : "m"(*(char *)(x)))
+# if defined(__GNUC__) && __GNUC__ >= 3
+# define PREFETCH(x) __builtin_prefetch ((x), 0, 0)
+# define PREFETCH_FOR_WRITE(x) __builtin_prefetch ((x), 1)
+# endif
# endif
# endif