blob: d799ae648728ccaa9c4d89777157a2b5f4c4e747 [file] [log] [blame]
The Android Open Source Project1dc9e472009-03-03 19:28:35 -08001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 ****************************************************************************
11 ****************************************************************************/
12#ifndef __ASM_SYSTEM_H
13#define __ASM_SYSTEM_H
14
15#include <linux/kernel.h>
16#include <asm/segment.h>
17#include <asm/cpufeature.h>
18#include <asm/cmpxchg.h>
19
20#define nop() __asm__ __volatile__ ("nop")
21#define mb() alternative("lock; addl $0,0(%%esp)", "mfence", X86_FEATURE_XMM2)
22#define rmb() alternative("lock; addl $0,0(%%esp)", "lfence", X86_FEATURE_XMM2)
23#define wmb() alternative("lock; addl $0,0(%%esp)", "sfence", X86_FEATURE_XMM)
24#define read_barrier_depends() do { } while(0)
25#define smp_mb() barrier()
26#define smp_rmb() barrier()
27#define smp_wmb() barrier()
28#define smp_read_barrier_depends() do { } while(0)
29#define set_mb(var, value) do { var = value; barrier(); } while (0)
30#include <linux/irqflags.h>
31#define HAVE_DISABLE_HLT
32
33#endif