Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src Write out register pairs for strd.
details: https://anonhg.NetBSD.org/src/rev/007bd626e632
branches: trunk
changeset: 792036:007bd626e632
user: joerg <joerg%NetBSD.org@localhost>
date: Tue Dec 17 01:27:21 2013 +0000
description:
Write out register pairs for strd.
diffstat:
common/lib/libc/arch/arm/string/memcpy_xscale.S | 48 +++++++++---------
sys/arch/arm/arm32/bcopy_page.S | 66 ++++++++++++------------
sys/arch/arm/arm32/locore.S | 10 +-
3 files changed, 62 insertions(+), 62 deletions(-)
diffs (271 lines):
diff -r 633cf01bdfad -r 007bd626e632 common/lib/libc/arch/arm/string/memcpy_xscale.S
--- a/common/lib/libc/arch/arm/string/memcpy_xscale.S Tue Dec 17 01:17:39 2013 +0000
+++ b/common/lib/libc/arch/arm/string/memcpy_xscale.S Tue Dec 17 01:27:21 2013 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: memcpy_xscale.S,v 1.4 2013/08/19 01:08:53 matt Exp $ */
+/* $NetBSD: memcpy_xscale.S,v 1.5 2013/12/17 01:27:21 joerg Exp $ */
/*
* Copyright 2003 Wasabi Systems, Inc.
@@ -83,52 +83,52 @@
ldr r7, [r1], #0x04 /* LD:0c-0f */
ldr r8, [r1], #0x04 /* LD:10-13 */
ldr r9, [r1], #0x04 /* LD:14-17 */
- strd r4, [r3], #0x08 /* ST:00-07 */
+ strd r4, r5, [r3], #0x08 /* ST:00-07 */
ldr r4, [r1], #0x04 /* LD:18-1b */
ldr r5, [r1], #0x04 /* LD:1c-1f */
- strd r6, [r3], #0x08 /* ST:08-0f */
+ strd r6, r7, [r3], #0x08 /* ST:08-0f */
ldr r6, [r1], #0x04 /* LD:20-23 */
ldr r7, [r1], #0x04 /* LD:24-27 */
pld [r1, #0x18] /* Prefetch 0x40 */
- strd r8, [r3], #0x08 /* ST:10-17 */
+ strd r8, r9, [r3], #0x08 /* ST:10-17 */
ldr r8, [r1], #0x04 /* LD:28-2b */
ldr r9, [r1], #0x04 /* LD:2c-2f */
- strd r4, [r3], #0x08 /* ST:18-1f */
+ strd r4, r5, [r3], #0x08 /* ST:18-1f */
ldr r4, [r1], #0x04 /* LD:30-33 */
ldr r5, [r1], #0x04 /* LD:34-37 */
- strd r6, [r3], #0x08 /* ST:20-27 */
+ strd r6, r7, [r3], #0x08 /* ST:20-27 */
ldr r6, [r1], #0x04 /* LD:38-3b */
ldr r7, [r1], #0x04 /* LD:3c-3f */
- strd r8, [r3], #0x08 /* ST:28-2f */
+ strd r8, r9, [r3], #0x08 /* ST:28-2f */
ldr r8, [r1], #0x04 /* LD:40-43 */
ldr r9, [r1], #0x04 /* LD:44-47 */
pld [r1, #0x18] /* Prefetch 0x60 */
- strd r4, [r3], #0x08 /* ST:30-37 */
+ strd r4, r5, [r3], #0x08 /* ST:30-37 */
ldr r4, [r1], #0x04 /* LD:48-4b */
ldr r5, [r1], #0x04 /* LD:4c-4f */
- strd r6, [r3], #0x08 /* ST:38-3f */
+ strd r6, r7, [r3], #0x08 /* ST:38-3f */
ldr r6, [r1], #0x04 /* LD:50-53 */
ldr r7, [r1], #0x04 /* LD:54-57 */
- strd r8, [r3], #0x08 /* ST:40-47 */
+ strd r8, r9, [r3], #0x08 /* ST:40-47 */
ldr r8, [r1], #0x04 /* LD:58-5b */
ldr r9, [r1], #0x04 /* LD:5c-5f */
- strd r4, [r3], #0x08 /* ST:48-4f */
+ strd r4, r5, [r3], #0x08 /* ST:48-4f */
ldr r4, [r1], #0x04 /* LD:60-63 */
ldr r5, [r1], #0x04 /* LD:64-67 */
pld [r1, #0x18] /* Prefetch 0x80 */
- strd r6, [r3], #0x08 /* ST:50-57 */
+ strd r6, r7, [r3], #0x08 /* ST:50-57 */
ldr r6, [r1], #0x04 /* LD:68-6b */
ldr r7, [r1], #0x04 /* LD:6c-6f */
- strd r8, [r3], #0x08 /* ST:58-5f */
+ strd r8, r9, [r3], #0x08 /* ST:58-5f */
ldr r8, [r1], #0x04 /* LD:70-73 */
ldr r9, [r1], #0x04 /* LD:74-77 */
- strd r4, [r3], #0x08 /* ST:60-67 */
+ strd r4, r5, [r3], #0x08 /* ST:60-67 */
ldr r4, [r1], #0x04 /* LD:78-7b */
ldr r5, [r1], #0x04 /* LD:7c-7f */
- strd r6, [r3], #0x08 /* ST:68-6f */
- strd r8, [r3], #0x08 /* ST:70-77 */
+ strd r6, r7, [r3], #0x08 /* ST:68-6f */
+ strd r8, r9, [r3], #0x08 /* ST:70-77 */
subs r2, r2, #0x80
- strd r4, [r3], #0x08 /* ST:78-7f */
+ strd r4, r5, [r3], #0x08 /* ST:78-7f */
bge .Lmemcpy_w_loop128
.Lmemcpy_w_lessthan128:
@@ -147,13 +147,13 @@
ldr r7, [r1], #0x04
ldr r8, [r1], #0x04
ldr r9, [r1], #0x04
- strd r4, [r3], #0x08
+ strd r4, r5, [r3], #0x08
ldr r4, [r1], #0x04
ldr r5, [r1], #0x04
- strd r6, [r3], #0x08
- strd r8, [r3], #0x08
+ strd r6, r7, [r3], #0x08
+ strd r8, r9, [r3], #0x08
subs r2, r2, #0x20
- strd r4, [r3], #0x08
+ strd r4, r5, [r3], #0x08
bge .Lmemcpy_w_loop32
.Lmemcpy_w_lessthan32:
@@ -170,19 +170,19 @@
ldr r4, [r1], #0x04
ldr r5, [r1], #0x04
sub r2, r2, #0x08
- strd r4, [r3], #0x08
+ strd r4, r5, [r3], #0x08
/* At least 16 bytes remaining */
ldr r4, [r1], #0x04
ldr r5, [r1], #0x04
sub r2, r2, #0x08
- strd r4, [r3], #0x08
+ strd r4, r5, [r3], #0x08
/* At least 8 bytes remaining */
ldr r4, [r1], #0x04
ldr r5, [r1], #0x04
subs r2, r2, #0x08
- strd r4, [r3], #0x08
+ strd r4, r5, [r3], #0x08
/* Less than 8 bytes remaining */
pop {r4-r9}
diff -r 633cf01bdfad -r 007bd626e632 sys/arch/arm/arm32/bcopy_page.S
--- a/sys/arch/arm/arm32/bcopy_page.S Tue Dec 17 01:17:39 2013 +0000
+++ b/sys/arch/arm/arm32/bcopy_page.S Tue Dec 17 01:27:21 2013 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: bcopy_page.S,v 1.9 2013/08/18 06:29:29 matt Exp $ */
+/* $NetBSD: bcopy_page.S,v 1.10 2013/12/17 01:27:21 joerg Exp $ */
/*
* Copyright (c) 1995 Scott Stevens
@@ -193,56 +193,56 @@
1: pld [r0, #0x18] /* Prefetch 0x20 */
ldr r4, [r0], #0x04 /* 0x08 */
ldr r5, [r0], #0x04 /* 0x0c */
- strd r2, [r1], #0x08
+ strd r2, r3, [r1], #0x08
ldr r2, [r0], #0x04 /* 0x10 */
ldr r3, [r0], #0x04 /* 0x14 */
- strd r4, [r1], #0x08
+ strd r4, r5, [r1], #0x08
ldr r4, [r0], #0x04 /* 0x18 */
ldr r5, [r0], #0x04 /* 0x1c */
- strd r2, [r1], #0x08
+ strd r2, r3, [r1], #0x08
ldr r2, [r0], #0x04 /* 0x20 */
ldr r3, [r0], #0x04 /* 0x24 */
pld [r0, #0x18] /* Prefetch 0x40 */
- strd r4, [r1], #0x08
+ strd r4, r5, [r1], #0x08
ldr r4, [r0], #0x04 /* 0x28 */
ldr r5, [r0], #0x04 /* 0x2c */
- strd r2, [r1], #0x08
+ strd r2, r3, [r1], #0x08
ldr r2, [r0], #0x04 /* 0x30 */
ldr r3, [r0], #0x04 /* 0x34 */
- strd r4, [r1], #0x08
+ strd r4, r5, [r1], #0x08
ldr r4, [r0], #0x04 /* 0x38 */
ldr r5, [r0], #0x04 /* 0x3c */
- strd r2, [r1], #0x08
+ strd r2, r3, [r1], #0x08
ldr r2, [r0], #0x04 /* 0x40 */
ldr r3, [r0], #0x04 /* 0x44 */
pld [r0, #0x18] /* Prefetch 0x60 */
- strd r4, [r1], #0x08
+ strd r4, r5, [r1], #0x08
ldr r4, [r0], #0x04 /* 0x48 */
ldr r5, [r0], #0x04 /* 0x4c */
- strd r2, [r1], #0x08
+ strd r2, r3, [r1], #0x08
ldr r2, [r0], #0x04 /* 0x50 */
ldr r3, [r0], #0x04 /* 0x54 */
- strd r4, [r1], #0x08
+ strd r4, r5, [r1], #0x08
ldr r4, [r0], #0x04 /* 0x58 */
ldr r5, [r0], #0x04 /* 0x5c */
- strd r2, [r1], #0x08
+ strd r2, r3, [r1], #0x08
ldr r2, [r0], #0x04 /* 0x60 */
ldr r3, [r0], #0x04 /* 0x64 */
pld [r0, #0x18] /* Prefetch 0x80 */
- strd r4, [r1], #0x08
+ strd r4, r5, [r1], #0x08
ldr r4, [r0], #0x04 /* 0x68 */
ldr r5, [r0], #0x04 /* 0x6c */
- strd r2, [r1], #0x08
+ strd r2, r3, [r1], #0x08
ldr r2, [r0], #0x04 /* 0x70 */
ldr r3, [r0], #0x04 /* 0x74 */
- strd r4, [r1], #0x08
+ strd r4, r5, [r1], #0x08
ldr r4, [r0], #0x04 /* 0x78 */
ldr r5, [r0], #0x04 /* 0x7c */
- strd r2, [r1], #0x08
+ strd r2, r3, [r1], #0x08
subs ip, ip, #0x01
ldrgt r2, [r0], #0x04 /* 0x80 */
ldrgt r3, [r0], #0x04 /* 0x84 */
- strd r4, [r1], #0x08
+ strd r4, r5, [r1], #0x08
bgt 1b
pop {r4, r5}
RET
@@ -255,22 +255,22 @@
mov r1, #PAGE_SIZE
mov r2, #0
mov r3, #0
-1: strd r2, [r0], #8 /* 32 */
- strd r2, [r0], #8
- strd r2, [r0], #8
- strd r2, [r0], #8
- strd r2, [r0], #8 /* 64 */
- strd r2, [r0], #8
- strd r2, [r0], #8
- strd r2, [r0], #8
- strd r2, [r0], #8 /* 96 */
- strd r2, [r0], #8
- strd r2, [r0], #8
- strd r2, [r0], #8
- strd r2, [r0], #8 /* 128 */
- strd r2, [r0], #8
- strd r2, [r0], #8
- strd r2, [r0], #8
+1: strd r2, r3, [r0], #8 /* 32 */
+ strd r2, r3, [r0], #8
+ strd r2, r3, [r0], #8
+ strd r2, r3, [r0], #8
+ strd r2, r3, [r0], #8 /* 64 */
+ strd r2, r3, [r0], #8
+ strd r2, r3, [r0], #8
+ strd r2, r3, [r0], #8
+ strd r2, r3, [r0], #8 /* 96 */
+ strd r2, r3, [r0], #8
+ strd r2, r3, [r0], #8
+ strd r2, r3, [r0], #8
+ strd r2, r3, [r0], #8 /* 128 */
+ strd r2, r3, [r0], #8
+ strd r2, r3, [r0], #8
+ strd r2, r3, [r0], #8
subs r1, r1, #128
bne 1b
RET
diff -r 633cf01bdfad -r 007bd626e632 sys/arch/arm/arm32/locore.S
--- a/sys/arch/arm/arm32/locore.S Tue Dec 17 01:17:39 2013 +0000
+++ b/sys/arch/arm/arm32/locore.S Tue Dec 17 01:27:21 2013 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: locore.S,v 1.34 2013/12/01 02:54:33 joerg Exp $ */
+/* $NetBSD: locore.S,v 1.35 2013/12/17 01:27:21 joerg Exp $ */
/*
* Copyright (C) 1994-1997 Mark Brinicombe
@@ -40,7 +40,7 @@
/* What size should this really be ? It is only used by init_arm() */
#define INIT_ARM_STACK_SIZE 2048
- RCSID("$NetBSD: locore.S,v 1.34 2013/12/01 02:54:33 joerg Exp $")
+ RCSID("$NetBSD: locore.S,v 1.35 2013/12/17 01:27:21 joerg Exp $")
/*
* This is for kvm_mkdb, and should be the address of the beginning
@@ -218,9 +218,9 @@
add r2, r0, #(PCB_R8)
stmia r2, {r8-r13}
#else
- strd r8, [r0, #(PCB_R8)]
- strd r10, [r0, #(PCB_R10)]
- strd r12, [r0, #(PCB_R12)]
+ strd r8, r9, [r0, #(PCB_R8)]
+ strd r10, r11, [r0, #(PCB_R10)]
+ strd r12, r13, [r0, #(PCB_R12)]
#endif
bl _C_LABEL(dodumpsys)
Home |
Main Index |
Thread Index |
Old Index