Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/lib/libc/arch/m68k/gen Use a more portable series of instruc...



details:   https://anonhg.NetBSD.org/src/rev/6f4adb58de2e
branches:  trunk
changeset: 787975:6f4adb58de2e
user:      matt <matt%NetBSD.org@localhost>
date:      Wed Jul 17 04:57:55 2013 +0000

description:
Use a more portable series of instructions.

diffstat:

 lib/libc/arch/m68k/gen/alloca.S |  9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diffs (32 lines):

diff -r da529382214e -r 6f4adb58de2e lib/libc/arch/m68k/gen/alloca.S
--- a/lib/libc/arch/m68k/gen/alloca.S   Wed Jul 17 04:56:14 2013 +0000
+++ b/lib/libc/arch/m68k/gen/alloca.S   Wed Jul 17 04:57:55 2013 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: alloca.S,v 1.8 2013/07/16 22:12:20 matt Exp $  */
+/*     $NetBSD: alloca.S,v 1.9 2013/07/17 04:57:55 matt Exp $  */
 
 /*-
  * Copyright (c) 1990 The Regents of the University of California.
@@ -39,7 +39,7 @@
 #if 0
        RCSID("from: @(#)alloca.s       5.1 (Berkeley) 5/12/90")
 #else
-       RCSID("$NetBSD: alloca.S,v 1.8 2013/07/16 22:12:20 matt Exp $")
+       RCSID("$NetBSD: alloca.S,v 1.9 2013/07/17 04:57:55 matt Exp $")
 #endif
 #endif /* LIBC_SCCS and not lint */
 
@@ -49,10 +49,11 @@
        movl    (%sp),%a1       /* save return addr */
        movl    %sp,%d0         /* get current SP value */
        subl    4(%sp),%d0      /* allocate requested space */
-       andb    #~3,%d0         /* longword align for efficiency */
+       movql   #-4,%d1         /* sign extend a mask */
+       andl    %d1,%d0         /* longword align for efficiency */
        addql   #8,%d0          /* reuse space of call frame */
        movl    %d0,%sp         /* set new SP value */
-       lea     -4(%sp),%sp     /* account for argument pop in caller */
+       subql   #4,%sp          /* account for argument pop in caller */
 #ifdef __SVR4_ABI__
        moveal  %d0,%a0
 #endif



Home | Main Index | Thread Index | Old Index