summaryrefslogtreecommitdiffstats
path: root/include/asm-sparc/atops.h
blob: 0bb70752de7193ddbf0b00eb72851752f1788a1d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
/* atops.h: Atomic SPARC operations.
 *
 * Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu)
 */
#ifndef _SPARC_ATOPS_H
#define _SPARC_ATOPS_H

#ifdef __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