OpenCores
URL https://opencores.org/ocsvn/or1k_soc_on_altera_embedded_dev_kit/or1k_soc_on_altera_embedded_dev_kit/trunk

Subversion Repositories or1k_soc_on_altera_embedded_dev_kit

[/] [or1k_soc_on_altera_embedded_dev_kit/] [trunk/] [linux-2.6/] [linux-2.6.24/] [arch/] [cris/] [arch-v32/] [lib/] [spinlock.S] - Rev 3

Compare with Previous | Blame | View Log

;; 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

Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.