Messages in this thread | | | Date | Fri, 11 Dec 2009 11:23:16 +0100 | From | Ingo Molnar <> | Subject | Re: [PATCH 1/2] perf tools: allow building for ARM |
| |
* Jamie Iles <jamie.iles@picochip.com> wrote:
> +#ifdef __arm__ > +#include "../../arch/arm/include/asm/unistd.h" > +#define rmb() asm volatile("":::"memory") > +#define cpu_relax() asm volatile("":::"memory") > +#endif
cpu_relax() looks fine, but rmb() seems not to match the one that can be found in arch/arm/:
arch/arm/include/asm/system.h:#define rmb() dmb() arch/arm/include/asm/system.h:#define rmb() do { if (arch_is_coherent()) dmb(); else barrier(); } while (0) arch/arm/include/asm/system.h:#define smp_rmb() rmb()
arch/arm/include/asm/system.h:#define dmb() __asm__ __volatile__ ("dmb" : : : "memory") arch/arm/include/asm/system.h:#define dmb() __asm__ __volatile__ ("mcr p15, 0, %0, c7, c10, 5" \ arch/arm/include/asm/system.h:#define dmb() __asm__ __volatile__ ("" : : : "memory") arch/arm/include/asm/system.h:#define dmb() __asm__ __volatile__ ("" : : : "memory")
Ingo
| |