summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tools/perf/Makefile8
-rw-r--r--tools/perf/perf.h6
2 files changed, 11 insertions, 3 deletions
diff --git a/tools/perf/Makefile b/tools/perf/Makefile
index 5d1a8b0dff8f..3f0666af93de 100644
--- a/tools/perf/Makefile
+++ b/tools/perf/Makefile
@@ -166,10 +166,12 @@ ifdef NO_64BIT
MBITS := -m32
else
#
- # If we're on a 64-bit kernel, use -m64:
+ # If we're on a 64-bit kernel (except ia64), use -m64:
#
- ifneq ($(patsubst %64,%,$(uname_M)),$(uname_M))
- MBITS := -m64
+ ifneq ($(uname_M),ia64)
+ ifneq ($(patsubst %64,%,$(uname_M)),$(uname_M))
+ MBITS := -m64
+ endif
endif
endif
diff --git a/tools/perf/perf.h b/tools/perf/perf.h
index 216bdb223f63..454d5d55f32d 100644
--- a/tools/perf/perf.h
+++ b/tools/perf/perf.h
@@ -53,6 +53,12 @@
#define cpu_relax() asm volatile("" ::: "memory")
#endif
+#ifdef __ia64__
+#include "../../arch/ia64/include/asm/unistd.h"
+#define rmb() asm volatile ("mf" ::: "memory")
+#define cpu_relax() asm volatile ("hint @pause" ::: "memory")
+#endif
+
#include <time.h>
#include <unistd.h>
#include <sys/types.h>