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

Quelle  string_32.S   Sprache: Sparc

 
/* SPDX-License-Identifier: GPL-2.0 */

/*
 * String handling functions for PowerPC32
 *
 * Copyright (C) 1996 Paul Mackerras.
 *
 */


#include <linux/export.h>
#include <asm/ppc_asm.h>
#include <asm/cache.h>

 .text

CACHELINE_BYTES = L1_CACHE_BYTES
LG_CACHELINE_BYTES = L1_CACHE_SHIFT
CACHELINE_MASK = (L1_CACHE_BYTES-1)

_GLOBAL(__arch_clear_user)
/*
 * Use dcbz on the complete cache lines in the destination
 * to set them to zero.  This requires that the destination
 * area is cacheable.
 */

 cmplwi cr0, r4, 4
 mr r10, r3
 li r3, 0
 blt 7f

11: stw r3, 0(r10)
 beqlr
 andi. r0, r10, 3
 add r11, r0, r4
 subf r6, r0, r10

 clrlwi r7, r6, 32 - LG_CACHELINE_BYTES
 add r8, r7, r11
 srwi r9, r8, LG_CACHELINE_BYTES
 addic. r9, r9, -1 /* total number of complete cachelines */
 ble 2f
 xori r0, r7, CACHELINE_MASK & ~3
 srwi. r0, r0, 2
 beq 3f
 mtctr r0
4: stwu r3, 4(r6)
 bdnz 4b
3: mtctr r9
 li r7, 4
10: dcbz r7, r6
 addi r6, r6, CACHELINE_BYTES
 bdnz 10b
 clrlwi r11, r8, 32 - LG_CACHELINE_BYTES
 addi r11, r11, 4

2: srwi r0 ,r11 ,2
 mtctr r0
 bdz 6f
1: stwu r3, 4(r6)
 bdnz 1b
6: andi. r11, r11, 3
 beqlr
 mtctr r11
 addi r6, r6, 3
8: stbu r3, 1(r6)
 bdnz 8b
 blr

7: cmpwi cr0, r4, 0
 beqlr
 mtctr r4
 addi r6, r10, -1
9: stbu r3, 1(r6)
 bdnz 9b
 blr

90: mr r3, r4
 blr
91: add r3, r10, r4
 subf r3, r6, r3
 blr

 EX_TABLE(11b, 90b)
 EX_TABLE(4b, 91b)
 EX_TABLE(10b, 91b)
 EX_TABLE(1b, 91b)
 EX_TABLE(8b, 91b)
 EX_TABLE(9b, 91b)

EXPORT_SYMBOL(__arch_clear_user)

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

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