blob: 30bdf0fb7c04e1f4538e11f1376130c3677e9c36 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
/* atops.h: Atomic SPARC operations.
*
* Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu)
*/
#ifndef _SPARC_ATOPS_H
#define _SPARC_ATOPS_H
#include <linux/config.h>
#ifdef CONFIG_SMP
extern __inline__ __volatile__ unsigned char ldstub(volatile unsigned char *lock)
{
volatile unsigned char retval;
__asm__ __volatile__("ldstub [%1], %0\n\t" :
"=&r" (retval) :
"r" (lock));
return retval;
}
#endif
#endif
|