Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Firefox/nsprpub/pr/src/md/unix/   (Browser von der Mozilla Stiftung Version 136.0.1©)  Datei vom 10.2.2025 mit Größe 1 kB image not shown  

Quelle  os_Darwin_ppc.s   Sprache: Sparc

 
# -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
file, You can obtain one at http://mozilla.org/MPL/2.0/.

#
# Based on the programming examples in The PowerPC Architecture:
# A Specification for A New Family of RISC Processors, 2nd Ed.,
# Book I, Section E.1, "Synchronization," pp. 249-256, May 1994.
#

.text

#
# PRInt32 __PR_DarwinPPC_AtomicIncrement(PRInt32 *val);
#
        .align  2
        .globl  __PR_DarwinPPC_AtomicIncrement
        .private_extern __PR_DarwinPPC_AtomicIncrement
__PR_DarwinPPC_AtomicIncrement:
        lwarx   r4,0,r3
        addi    r0,r4,1
        stwcx.  r0,0,r3
        bne-    __PR_DarwinPPC_AtomicIncrement
        mr      r3,r0
        blr

#
# PRInt32 __PR_DarwinPPC_AtomicDecrement(PRInt32 *val);
#
        .align  2
        .globl  __PR_DarwinPPC_AtomicDecrement
        .private_extern __PR_DarwinPPC_AtomicDecrement
__PR_DarwinPPC_AtomicDecrement:
        lwarx   r4,0,r3
        addi    r0,r4,-1
        stwcx.  r0,0,r3
        bne-    __PR_DarwinPPC_AtomicDecrement
        mr      r3,r0
        blr

#
# PRInt32 __PR_DarwinPPC_AtomicSet(PRInt32 *val, PRInt32 newval);
#
        .align  2
        .globl  __PR_DarwinPPC_AtomicSet
        .private_extern __PR_DarwinPPC_AtomicSet
__PR_DarwinPPC_AtomicSet:
        lwarx   r5,0,r3
        stwcx.  r4,0,r3
        bne-    __PR_DarwinPPC_AtomicSet
        mr      r3,r5
        blr

#
# PRInt32 __PR_DarwinPPC_AtomicAdd(PRInt32 *ptr, PRInt32 val);
#
        .align  2
        .globl  __PR_DarwinPPC_AtomicAdd
        .private_extern __PR_DarwinPPC_AtomicAdd
__PR_DarwinPPC_AtomicAdd:
        lwarx   r5,0,r3
        add     r0,r4,r5
        stwcx.  r0,0,r3
        bne-    __PR_DarwinPPC_AtomicAdd
        mr      r3,r0
        blr

Messung V0.5
C=90 H=97 G=93

¤ Dauer der Verarbeitung: 0.11 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.