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


Quelle  strnlen_user.S   Sprache: Sparc

 
/*
 * This file is subject to the terms and conditions of the GNU General Public
 * License.  See the file "COPYING" in the main directory of this archive
 * for more details.
 *
 * Copyright (c) 1996, 1998, 1999, 2004 by Ralf Baechle
 * Copyright (c) 1999 Silicon Graphics, Inc.
 */

#include <linux/export.h>
#include <asm/asm.h>
#include <asm/asm-offsets.h>
#include <asm/regdef.h>

#define EX(insn,reg,addr,handler)   \
9: insn reg, addr;    \
 .section __ex_table,"a";   \
 PTR_WD 9b, handler;    \
 .previous

/*
 * Return the size of a string including the ending NUL character up to a
 * maximum of a1 or 0 in case of error.
 *
 * Note: for performance reasons we deliberately accept that a user may
 *  make strlen_user and strnlen_user access the first few KSEG0
 *  bytes.  There's nothing secret there. On 64-bit accessing beyond
 *  the maximum is a tad hairier ...
 */

LEAF(__strnlen_user_asm)
 move  v0, a0
 PTR_ADDU a1, a0   # stop pointer
1:
#ifdef CONFIG_CPU_DADDI_WORKAROUNDS
 .set  noat
 li  AT, 1
#endif
 beq  v0, a1, 1f  # limit reached?
#ifdef CONFIG_EVA
 .set push
 .set eva
 EX(lbe, t0, (v0), .Lfault)
 .set pop
#else
 EX(lb, t0, (v0), .Lfault)
#endif
 .set  noreorder
 bnez  t0, 1b
1:
#ifndef CONFIG_CPU_DADDI_WORKAROUNDS
  PTR_ADDIU v0, 1
#else
  PTR_ADDU v0, AT
 .set  at
#endif
 .set  reorder
 PTR_SUBU v0, a0
 jr  ra
 END(__strnlen_user_asm)

.Lfault:
 move  v0, zero
 jr  ra

 EXPORT_SYMBOL(__strnlen_user_asm)

Messung V0.5
C=97 H=100 G=98

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