Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/lib/libc/arch/powerpc64/gen replace kernel-only 'stmd' and '...
details: https://anonhg.NetBSD.org/src/rev/8c59adf7574f
branches: trunk
changeset: 753265:8c59adf7574f
user: mrg <mrg%NetBSD.org@localhost>
date: Mon Mar 22 01:39:11 2010 +0000
description:
replace kernel-only 'stmd' and 'lmd' operations in userland with equivalent
sequences of code, as done in eg, powerpc64/gen/_setjmp.S rev 1.2.
from dennis.c.ferguson%gmail.com@localhost in PR#43009.
diffstat:
lib/libc/arch/powerpc64/gen/__sigsetjmp14.S | 16 ++++++++++++----
1 files changed, 12 insertions(+), 4 deletions(-)
diffs (40 lines):
diff -r e444d8b4d86c -r 8c59adf7574f lib/libc/arch/powerpc64/gen/__sigsetjmp14.S
--- a/lib/libc/arch/powerpc64/gen/__sigsetjmp14.S Mon Mar 22 01:29:29 2010 +0000
+++ b/lib/libc/arch/powerpc64/gen/__sigsetjmp14.S Mon Mar 22 01:39:11 2010 +0000
@@ -1,11 +1,11 @@
-/* $NetBSD: __sigsetjmp14.S,v 1.1 2006/07/07 21:07:35 ross Exp $ */
+/* $NetBSD: __sigsetjmp14.S,v 1.2 2010/03/22 01:39:11 mrg Exp $ */
#include <sys/syscall.h>
#include <machine/asm.h>
#if defined(LIBC_SCCS)
.text
- .asciz "$NetBSD: __sigsetjmp14.S,v 1.1 2006/07/07 21:07:35 ross Exp $"
+ .asciz "$NetBSD: __sigsetjmp14.S,v 1.2 2010/03/22 01:39:11 mrg Exp $"
#endif
ENTRY(__sigsetjmp14)
@@ -22,12 +22,20 @@
mfcr %r12
mr %r10,%r1
mr %r9,%r2
- stmd 7, 0(%r6) # save r7-r31
+ i = 0
+ .rept 32-7
+ std 7+i,i*8(%r6) # save r7-r31
+ i = i + 1
+ .endr
li %r3,0
blr
ENTRY(__siglongjmp14)
- lmd 7,0(%r3) # load r7-r31
+ i = 0
+ .rept 32-7
+ ld 7+i,i*8(%r3) # load r7-r31
+ i = i + 1
+ .endr
mr %r6,%r4
mtlr %r11
mtcr %r12
Home |
Main Index |
Thread Index |
Old Index