Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/arch/arc/lib/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 1 kB image not shown  

Quelle  strlen.S   Sprache: Sparc

 
/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com)
 */


#include <linux/linkage.h>

ENTRY_CFI(strlen)
 or r3,r0,7
 ld r2,[r3,-7]
 ld.a r6,[r3,-3]
 mov r4,0x01010101
 ; uses long immediate
#ifdef __LITTLE_ENDIAN__
 asl_s r1,r0,3
 btst_s r0,2
 asl r7,r4,r1
 ror r5,r4
 sub r1,r2,r7
 bic_s r1,r1,r2
 mov.eq r7,r4
 sub r12,r6,r7
 bic r12,r12,r6
 or.eq r12,r12,r1
 and r12,r12,r5
 brne r12,0,.Learly_end
#else /* BIG ENDIAN */
 ror r5,r4
 btst_s r0,2
 mov_s r1,31
 sub3 r7,r1,r0
 sub r1,r2,r4
 bic_s r1,r1,r2
 bmsk r1,r1,r7
 sub r12,r6,r4
 bic r12,r12,r6
 bmsk.ne r12,r12,r7
 or.eq r12,r12,r1
 and r12,r12,r5
 brne r12,0,.Learly_end
#endif /* ENDIAN */

.Loop:
 ld_s r2,[r3,4]
 ld.a r6,[r3,8]
 ; stall for load result
 sub r1,r2,r4
 bic_s r1,r1,r2
 sub r12,r6,r4
 bic r12,r12,r6
 or r12,r12,r1
 and r12,r12,r5
 breq r12,0,.Loop
.Lend:
 and.f r1,r1,r5
 sub.ne r3,r3,4
 mov.eq r1,r12
#ifdef __LITTLE_ENDIAN__
 sub_s r2,r1,1
 bic_s r2,r2,r1
 norm r1,r2
 sub_s r0,r0,3
 lsr_s r1,r1,3
 sub     r0,r3,r0
 j_s.d [blink]
 sub     r0,r0,r1
#else /* BIG ENDIAN */
 lsr_s r1,r1,7
 mov.eq r2,r6
 bic_s r1,r1,r2
 norm r1,r1
 sub     r0,r3,r0
 lsr_s r1,r1,3
 j_s.d [blink]
 add     r0,r0,r1
#endif /* ENDIAN */
.Learly_end:
 b.d .Lend
 sub_s.ne r1,r1,r1
END_CFI(strlen)

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

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