1 /* $Id: locks.S,v 1.16 2000/02/26 11:02:47 anton Exp $
2 * locks.S: SMP low-level lock primitives on Sparc.
4 * Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu)
5 * Copyright (C) 1998 Anton Blanchard (anton@progsoc.uts.edu.au)
6 * Copyright (C) 1998 Jakub Jelinek (jj@ultra.linux.cz)
9 #include <asm/ptrace.h>
12 #include <asm/spinlock.h>
17 /* Read/writer locks, as usual this is overly clever to make it
18 * as fast as possible.
22 ___rw_read_enter_spin_on_wlock:
26 b ___rw_read_enter_spin_on_wlock
28 ___rw_read_exit_spin_on_wlock:
32 b ___rw_read_exit_spin_on_wlock
34 ___rw_write_enter_spin_on_wlock:
36 be,a ___rw_write_enter
38 b ___rw_write_enter_spin_on_wlock
41 .globl ___rw_read_enter
44 bne,a ___rw_read_enter_spin_on_wlock
52 .globl ___rw_read_exit
55 bne,a ___rw_read_exit_spin_on_wlock
63 .globl ___rw_write_enter
66 bne ___rw_write_enter_spin_on_wlock
69 bne,a ___rw_write_enter_spin_on_wlock