X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=arch%2Farch-sparc.h;h=cd552ab7c94fd8ce613e64b38739a4be6741c2f7;hp=de675daeba0fb497c732a4028b5a6930a3e1e159;hb=29721c9ce4f85775ff77dcb04bd26a7f10272e47;hpb=69ebbd397e80b23ec4281c99e9f7242a089cc771 diff --git a/arch/arch-sparc.h b/arch/arch-sparc.h index de675dae..cd552ab7 100644 --- a/arch/arch-sparc.h +++ b/arch/arch-sparc.h @@ -23,33 +23,4 @@ #define read_barrier() __asm__ __volatile__ ("" : : : "memory") #define write_barrier() __asm__ __volatile__ ("" : : : "memory") -typedef struct { - volatile unsigned char lock; -} spinlock_t; - -static inline void spin_lock(spinlock_t *lock) -{ - __asm__ __volatile__( - "\n1:\n\t" - "ldstub [%0], %%g2\n\t" - "orcc %%g2, 0x0, %%g0\n\t" - "bne,a 2f\n\t" - " ldub [%0], %%g2\n\t" - ".subsection 2\n" - "2:\n\t" - "orcc %%g2, 0x0, %%g0\n\t" - "bne,a 2b\n\t" - " ldub [%0], %%g2\n\t" - "b,a 1b\n\t" - ".previous\n" - : /* no outputs */ - : "r" (lock) - : "g2", "memory", "cc"); -} - -static inline void spin_unlock(spinlock_t *lock) -{ - __asm__ __volatile__("stb %%g0, [%0]" : : "r" (lock) : "memory"); -} - #endif