Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  atomic.S   Sprache: Sparc

 
/* SPDX-License-Identifier: GPL-2.0 */
// Copyright (C) 2018 Hangzhou C-SKY Microsystems co.,ltd.

#include <linux/linkage.h>
#include <abi/entry.h>

.text

/*
 * int csky_cmpxchg(int oldval, int newval, int *ptr)
 *
 * If *ptr != oldval && return 1,
 * else *ptr = newval return 0.
 */

ENTRY(csky_cmpxchg)
 USPTOKSP

 RD_MEH a3
 WR_MEH a3

 mfcr a3, epc
 addi a3, TRAP0_SIZE

 subi    sp, 16
 stw     a3, (sp, 0)
 mfcr    a3, epsr
 stw     a3, (sp, 4)
 mfcr a3, usp
 stw     a3, (sp, 8)

 psrset ee
#ifdef CONFIG_CPU_HAS_LDSTEX
1:
 ldex a3, (a2)
 cmpne a0, a3
 bt16 2f
 mov a3, a1
 stex a3, (a2)
 bez a3, 1b
2:
 sync.is
#else
GLOBAL(csky_cmpxchg_ldw)
 ldw a3, (a2)
 cmpne a0, a3
 bt16 3f
GLOBAL(csky_cmpxchg_stw)
 stw a1, (a2)
3:
#endif
 mvc a0
 ldw a3, (sp, 0)
 mtcr a3, epc
 ldw     a3, (sp, 4)
 mtcr a3, epsr
 ldw     a3, (sp, 8)
 mtcr a3, usp
 addi sp, 16
 KSPTOUSP
 rte
END(csky_cmpxchg)

Messung V0.5
C=96 H=93 G=94

¤ Dauer der Verarbeitung: 0.1 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.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge