File: atops.h

package info (click to toggle)
kernel-source-2.2.25 2.2.25-4
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 92,756 kB
  • ctags: 280,018
  • sloc: ansic: 1,711,350; asm: 60,340; makefile: 10,295; sh: 2,396; perl: 907; tcl: 570; lisp: 218; cpp: 186; awk: 133; sed: 72
file content (22 lines) | stat: -rw-r--r-- 413 bytes parent folder | download | duplicates (11)
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