diff options
author | jasone <jasone@FreeBSD.org> | 2015-08-18 20:42:08 +0000 |
---|---|---|
committer | jasone <jasone@FreeBSD.org> | 2015-08-18 20:42:08 +0000 |
commit | 94992aff557f30dd7ba8b64c36714e12b3617193 (patch) | |
tree | 1577fd8ee75536e29fbafe2ffc62c33943b2a425 /contrib | |
parent | 725028ad293ab9fc384615e456103b1adb7fb624 (diff) | |
download | FreeBSD-src-94992aff557f30dd7ba8b64c36714e12b3617193.zip FreeBSD-src-94992aff557f30dd7ba8b64c36714e12b3617193.tar.gz |
Define CPU_SPINWAIT as cpu_spinwait().
Submitted by: cem
Diffstat (limited to 'contrib')
-rw-r--r-- | contrib/jemalloc/FREEBSD-diffs | 16 | ||||
-rw-r--r-- | contrib/jemalloc/include/jemalloc/jemalloc_FreeBSD.h | 12 |
2 files changed, 12 insertions, 16 deletions
diff --git a/contrib/jemalloc/FREEBSD-diffs b/contrib/jemalloc/FREEBSD-diffs index 8452677..58f5f6f 100644 --- a/contrib/jemalloc/FREEBSD-diffs +++ b/contrib/jemalloc/FREEBSD-diffs @@ -117,10 +117,10 @@ index dbf6aa7..f87dba8 100644 jemalloc_postfork_child diff --git a/include/jemalloc/jemalloc_FreeBSD.h b/include/jemalloc/jemalloc_FreeBSD.h new file mode 100644 -index 0000000..c5113b9 +index 0000000..737542e --- /dev/null +++ b/include/jemalloc/jemalloc_FreeBSD.h -@@ -0,0 +1,144 @@ +@@ -0,0 +1,142 @@ +/* + * Override settings that were generated in jemalloc_defs.h as necessary. + */ @@ -135,7 +135,6 @@ index 0000000..c5113b9 + * The following are architecture-dependent, so conditionally define them for + * each supported architecture. + */ -+#undef CPU_SPINWAIT +#undef JEMALLOC_TLS_MODEL +#undef STATIC_PAGE_SHIFT +#undef LG_SIZEOF_PTR @@ -145,7 +144,6 @@ index 0000000..c5113b9 + +#ifdef __i386__ +# define LG_SIZEOF_PTR 2 -+# define CPU_SPINWAIT __asm__ volatile("pause") +# define JEMALLOC_TLS_MODEL __attribute__((tls_model("initial-exec"))) +#endif +#ifdef __ia64__ @@ -157,7 +155,6 @@ index 0000000..c5113b9 +#endif +#ifdef __amd64__ +# define LG_SIZEOF_PTR 3 -+# define CPU_SPINWAIT __asm__ volatile("pause") +# define JEMALLOC_TLS_MODEL __attribute__((tls_model("initial-exec"))) +#endif +#ifdef __arm__ @@ -183,15 +180,16 @@ index 0000000..c5113b9 +# define JEMALLOC_TLS_MODEL /* Default. */ +#endif + -+#ifndef CPU_SPINWAIT -+# define CPU_SPINWAIT do {} while (0) -+#endif -+ +#define STATIC_PAGE_SHIFT PAGE_SHIFT +#define LG_SIZEOF_INT 2 +#define LG_SIZEOF_LONG LG_SIZEOF_PTR +#define LG_SIZEOF_INTMAX_T 3 + ++#undef CPU_SPINWAIT ++#include <machine/cpu.h> ++#include <machine/cpufunc.h> ++#define CPU_SPINWAIT cpu_spinwait() ++ +/* Disable lazy-lock machinery, mangle isthreaded, and adjust its type. */ +#undef JEMALLOC_LAZY_LOCK +extern int __isthreaded; diff --git a/contrib/jemalloc/include/jemalloc/jemalloc_FreeBSD.h b/contrib/jemalloc/include/jemalloc/jemalloc_FreeBSD.h index c5113b9..737542e 100644 --- a/contrib/jemalloc/include/jemalloc/jemalloc_FreeBSD.h +++ b/contrib/jemalloc/include/jemalloc/jemalloc_FreeBSD.h @@ -12,7 +12,6 @@ * The following are architecture-dependent, so conditionally define them for * each supported architecture. */ -#undef CPU_SPINWAIT #undef JEMALLOC_TLS_MODEL #undef STATIC_PAGE_SHIFT #undef LG_SIZEOF_PTR @@ -22,7 +21,6 @@ #ifdef __i386__ # define LG_SIZEOF_PTR 2 -# define CPU_SPINWAIT __asm__ volatile("pause") # define JEMALLOC_TLS_MODEL __attribute__((tls_model("initial-exec"))) #endif #ifdef __ia64__ @@ -34,7 +32,6 @@ #endif #ifdef __amd64__ # define LG_SIZEOF_PTR 3 -# define CPU_SPINWAIT __asm__ volatile("pause") # define JEMALLOC_TLS_MODEL __attribute__((tls_model("initial-exec"))) #endif #ifdef __arm__ @@ -60,15 +57,16 @@ # define JEMALLOC_TLS_MODEL /* Default. */ #endif -#ifndef CPU_SPINWAIT -# define CPU_SPINWAIT do {} while (0) -#endif - #define STATIC_PAGE_SHIFT PAGE_SHIFT #define LG_SIZEOF_INT 2 #define LG_SIZEOF_LONG LG_SIZEOF_PTR #define LG_SIZEOF_INTMAX_T 3 +#undef CPU_SPINWAIT +#include <machine/cpu.h> +#include <machine/cpufunc.h> +#define CPU_SPINWAIT cpu_spinwait() + /* Disable lazy-lock machinery, mangle isthreaded, and adjust its type. */ #undef JEMALLOC_LAZY_LOCK extern int __isthreaded; |