51533b615e
New CRIS sub architecture named v32. From: Dave Jones <davej@redhat.com> Fix swapped kmalloc args Signed-off-by: Mikael Starvik <starvik@axis.com> Signed-off-by: Dave Jones <davej@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
34 lines
420 B
ArmAsm
34 lines
420 B
ArmAsm
;; Core of the spinlock implementation
|
|
;;
|
|
;; Copyright (C) 2004 Axis Communications AB.
|
|
;;
|
|
;; Author: Mikael Starvik
|
|
|
|
|
|
.global cris_spin_lock
|
|
.global cris_spin_trylock
|
|
|
|
.text
|
|
|
|
cris_spin_lock:
|
|
clearf p
|
|
1: test.d [$r10]
|
|
beq 1b
|
|
clearf p
|
|
ax
|
|
clear.d [$r10]
|
|
bcs 1b
|
|
clearf p
|
|
ret
|
|
nop
|
|
|
|
cris_spin_trylock:
|
|
clearf p
|
|
1: move.d [$r10], $r11
|
|
ax
|
|
clear.d [$r10]
|
|
bcs 1b
|
|
clearf p
|
|
ret
|
|
move.d $r11,$r10
|