diff options
-rw-r--r-- | configure.in | 15 | ||||
-rw-r--r-- | mysys/Makefile.am | 2 | ||||
-rw-r--r-- | sql/Makefile.am | 2 | ||||
-rw-r--r-- | storage/archive/Makefile.am | 2 | ||||
-rw-r--r-- | storage/blackhole/Makefile.am | 2 | ||||
-rw-r--r-- | storage/csv/Makefile.am | 2 | ||||
-rw-r--r-- | storage/example/Makefile.am | 2 | ||||
-rw-r--r-- | storage/federated/Makefile.am | 2 | ||||
-rw-r--r-- | storage/heap/Makefile.am | 2 | ||||
-rw-r--r-- | storage/innobase/include/ut0ut.h | 4 | ||||
-rw-r--r-- | storage/myisam/Makefile.am | 2 | ||||
-rw-r--r-- | storage/myisammrg/Makefile.am | 2 |
12 files changed, 29 insertions, 10 deletions
diff --git a/configure.in b/configure.in index d5a2fe0fe55..9baa574829d 100644 --- a/configure.in +++ b/configure.in @@ -2371,9 +2371,24 @@ AC_TRY_RUN([ [x86_pause_exists=no], [x86_pause_exists=no] # Cross-compile, assume no PAUSE instruction ) +AC_TRY_RUN([ + int main() { + __asm__ __volatile__ ("rep; nop"); + return 0; + } + ], + [x86_fake_pause_exists=yes], + [x86_fake_pause_exists=no], + [x86_fake_pause_exists=no] # Cross-compile, assume no x86 NOP instruction +) if test "$x86_pause_exists" = "yes" then AC_DEFINE([HAVE_PAUSE_INSTRUCTION], [1], [Does x86 PAUSE instruction exist]) +else + if test "$x86_fake_pause_exists" = "yes" + then + AC_DEFINE([HAVE_FAKE_PAUSE_INSTRUCTION], [1], [Does x86 NOP instruction exist]) + fi fi # Check if pthread_attr_setscope() exists diff --git a/mysys/Makefile.am b/mysys/Makefile.am index 045c80f32e4..0329d137c24 100644 --- a/mysys/Makefile.am +++ b/mysys/Makefile.am @@ -131,7 +131,7 @@ libmysys_a_LIBADD += probes_mysql.o libmysys_a_DEPENDENCIES += probes_mysql.o dtrace_files dtrace_providers CLEANFILES = probes_mysql.o dtrace_files dtrace_providers DTRACEFILES = mf_keycache.o -DTRACEPROVIDER = $(abs_top_srcdir)/sql/probes_mysql.d +DTRACEPROVIDER = $(top_srcdir)/sql/probes_mysql.d dtrace_files: echo $(DTRACEFILES) > $@ diff --git a/sql/Makefile.am b/sql/Makefile.am index d05e0efbcba..d7c35b3eb9a 100644 --- a/sql/Makefile.am +++ b/sql/Makefile.am @@ -212,7 +212,7 @@ libndb_la_DEPENDENCIES = dtrace_files dtrace_providers probes_libndb.o mysqld_LDADD += probes_all.o mysqld_DEPENDENCIES += dtrace_files dtrace_providers probes_all.o CLEANFILES += dtrace_files dtrace_providers probes_all.o -DTRACEPROVIDER = $(abs_top_srcdir)/sql/probes_mysql.d +DTRACEPROVIDER = $(top_srcdir)/sql/probes_mysql.d dtrace_files: echo $(DTRACEFILES) > $@ diff --git a/storage/archive/Makefile.am b/storage/archive/Makefile.am index 649d84d8152..621037936fa 100644 --- a/storage/archive/Makefile.am +++ b/storage/archive/Makefile.am @@ -72,7 +72,7 @@ libarchive_a_LIBADD = probes_mysql.o libarchive_a_DEPENDENCIES = probes_mysql.o dtrace_files dtrace_providers CLEANFILES = probes_mysql.o dtrace_files dtrace_providers DTRACEFILES = libarchive_a-ha_archive.o -DTRACEPROVIDER = $(abs_top_srcdir)/sql/probes_mysql.d +DTRACEPROVIDER = $(top_srcdir)/sql/probes_mysql.d dtrace_files: echo $(DTRACEFILES) > $@ diff --git a/storage/blackhole/Makefile.am b/storage/blackhole/Makefile.am index c274ce8f908..63e3d8dd208 100644 --- a/storage/blackhole/Makefile.am +++ b/storage/blackhole/Makefile.am @@ -54,7 +54,7 @@ libblackhole_a_LIBADD = probes_mysql.o libblackhole_a_DEPENDENCIES = probes_mysql.o dtrace_files dtrace_providers CLEANFILES = probes_mysql.o dtrace_files dtrace_providers DTRACEFILES = libblackhole_a-ha_blackhole.o -DTRACEPROVIDER = $(abs_top_srcdir)/sql/probes_mysql.d +DTRACEPROVIDER = $(top_srcdir)/sql/probes_mysql.d dtrace_files: echo $(DTRACEFILES) > $@ diff --git a/storage/csv/Makefile.am b/storage/csv/Makefile.am index fa7f77bd746..52707ff6eb8 100644 --- a/storage/csv/Makefile.am +++ b/storage/csv/Makefile.am @@ -47,7 +47,7 @@ libcsv_a_LIBADD = probes_mysql.o libcsv_a_DEPENDENCIES = probes_mysql.o dtrace_files dtrace_providers CLEANFILES = probes_mysql.o dtrace_files dtrace_providers DTRACEFILES = libcsv_a-ha_tina.o -DTRACEPROVIDER = $(abs_top_srcdir)/sql/probes_mysql.d +DTRACEPROVIDER = $(top_srcdir)/sql/probes_mysql.d dtrace_files: echo $(DTRACEFILES) > $@ diff --git a/storage/example/Makefile.am b/storage/example/Makefile.am index bcf519c67c6..a01230be219 100644 --- a/storage/example/Makefile.am +++ b/storage/example/Makefile.am @@ -55,7 +55,7 @@ libexample_a_DEPENDENCIES = probes_mysql.o CLEANFILES = BUILT_SOURCES = DTRACEFILES = libexample_a-ha_example.o -DTRACEPROVIDER = $(abs_top_srcdir)/sql/probes_mysql.d +DTRACEPROVIDER = $(top_srcdir)/sql/probes_mysql.d dtrace_files: echo $(DTRACEFILES) > $@ diff --git a/storage/federated/Makefile.am b/storage/federated/Makefile.am index 25db59dc3ce..3f05b77e092 100644 --- a/storage/federated/Makefile.am +++ b/storage/federated/Makefile.am @@ -54,7 +54,7 @@ libfederated_a_LIBADD = probes_mysql.o libfederated_a_DEPENDENCIES = probes_mysql.o dtrace_files dtrace_providers CLEANFILES = probes_mysql.o dtrace_files dtrace_providers DTRACEFILES = libfederated_a-ha_federated.o -DTRACEPROVIDER = $(abs_top_srcdir)/sql/probes_mysql.d +DTRACEPROVIDER = $(top_srcdir)/sql/probes_mysql.d dtrace_files: echo $(DTRACEFILES) > $@ diff --git a/storage/heap/Makefile.am b/storage/heap/Makefile.am index 5528fec71f1..e7250a9bc45 100644 --- a/storage/heap/Makefile.am +++ b/storage/heap/Makefile.am @@ -56,7 +56,7 @@ libheap_a_LIBADD = probes_mysql.o libheap_a_DEPENDENCIES = probes_mysql.o dtrace_files dtrace_providers CLEANFILES = probes_mysql.o dtrace_files dtrace_providers DTRACEFILES = ha_heap.o -DTRACEPROVIDER = $(abs_top_srcdir)/sql/probes_mysql.d +DTRACEPROVIDER = $(top_srcdir)/sql/probes_mysql.d dtrace_files: echo $(DTRACEFILES) > $@ diff --git a/storage/innobase/include/ut0ut.h b/storage/innobase/include/ut0ut.h index 7bb22de0950..17c5f0a665c 100644 --- a/storage/innobase/include/ut0ut.h +++ b/storage/innobase/include/ut0ut.h @@ -20,6 +20,9 @@ typedef time_t ib_time_t; #ifdef HAVE_PAUSE_INSTRUCTION #define PAUSE_INSTRUCTION() {__asm__ __volatile__ ("pause");} #else +#ifdef HAVE_FAKE_PAUSE_INSTRUCTION +#define PAUSE_INSTRUCTION() {__asm__ __volatile__ ("rep; nop");} +#else #ifdef UNIV_SYNC_ATOMIC #define PAUSE_INSTRUCTION() \ { \ @@ -30,6 +33,7 @@ typedef time_t ib_time_t; #define PAUSE_INSTRUCTION() #endif #endif +#endif /************************************************************ Gets the high 32 bits in a ulint. That is makes a shift >> 32, diff --git a/storage/myisam/Makefile.am b/storage/myisam/Makefile.am index 797d7523301..8009f56fbf9 100644 --- a/storage/myisam/Makefile.am +++ b/storage/myisam/Makefile.am @@ -155,7 +155,7 @@ libmyisam_a_LIBADD = probes_mysql.o libmyisam_a_DEPENDENCIES = probes_mysql.o dtrace_files dtrace_providers CLEANFILES += probes_mysql.o dtrace_files dtrace_providers DTRACEFILES = ha_myisam.o -DTRACEPROVIDER = $(abs_top_srcdir)/sql/probes_mysql.d +DTRACEPROVIDER = $(top_srcdir)/sql/probes_mysql.d dtrace_files: echo $(DTRACEFILES) > $@ diff --git a/storage/myisammrg/Makefile.am b/storage/myisammrg/Makefile.am index 2ae808c2011..7a95bd7dab0 100644 --- a/storage/myisammrg/Makefile.am +++ b/storage/myisammrg/Makefile.am @@ -45,7 +45,7 @@ libmyisammrg_a_LIBADD = probes_mysql.o libmyisammrg_a_DEPENDENCIES = probes_mysql.o dtrace_files dtrace_providers CLEANFILES = probes_mysql.o dtrace_files dtrace_providers DTRACEFILES = ha_myisammrg.o -DTRACEPROVIDER = $(abs_top_srcdir)/sql/probes_mysql.d +DTRACEPROVIDER = $(top_srcdir)/sql/probes_mysql.d dtrace_files: echo $(DTRACEFILES) > $@ |