[BACK]Return to lshift.asm CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / gmp / mpn / powerpc64

Diff for /OpenXM_contrib/gmp/mpn/powerpc64/Attic/lshift.asm between version 1.1.1.1 and 1.1.1.2

version 1.1.1.1, 2000/09/09 14:12:39 version 1.1.1.2, 2003/08/25 16:06:24
Line 1 
Line 1 
 #  PowerPC-64 mpn_lshift -- Shift a number left.  # PowerPC-64 mpn_lshift -- Shift a number left.
   
 # Copyright (C) 1999, 2000 Free Software Foundation, Inc.  # Copyright 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
   
 # This file is part of the GNU MP Library.  # This file is part of the GNU MP Library.
   
Line 19 
Line 19 
 # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,  # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
 # MA 02111-1307, USA.  # MA 02111-1307, USA.
   
   include(`../config.m4')
   
   
   # ppc630: 1.6375 cycles/limb
   
   
 # INPUT PARAMETERS  # INPUT PARAMETERS
 # res_ptr       r3  # res_ptr       r3
 # s1_ptr        r4  # s1_ptr        r4
 # size          r5  # size          r5
 # cnt           r6  # cnt           r6
   
 include(`../config.m4')  
   
 ASM_START()  ASM_START()
 PROLOGUE(mpn_lshift)  PROLOGUE(mpn_lshift)
         cmpdi   cr0,r5,20       # more than 20 limbs?          cmpdi   cr0,r5,20       # more than 20 limbs?
Line 63  PROLOGUE(mpn_lshift)
Line 66  PROLOGUE(mpn_lshift)
         blr          blr
   
 .LBIG:  .LBIG:
         std     r24,-64(1)          std     r24,-64(r1)
         std     r25,-56(1)          std     r25,-56(r1)
         std     r26,-48(1)          std     r26,-48(r1)
         std     r27,-40(1)          std     r27,-40(r1)
         std     r28,-32(1)          std     r28,-32(r1)
         std     r29,-24(1)          std     r29,-24(r1)
         std     r30,-16(1)          std     r30,-16(r1)
         std     r31,-8(1)          std     r31,-8(r1)
         ldu     r9,-8(r4)          ldu     r9,-8(r4)
         subfic  r8,r6,64          subfic  r8,r6,64
         srd     r3,r9,r8        # compute function return value          srd     r3,r9,r8        # compute function return value
Line 147  PROLOGUE(mpn_lshift)
Line 150  PROLOGUE(mpn_lshift)
         mr      r0,r12          mr      r0,r12
   
         std     r0,-8(r7)          std     r0,-8(r7)
         ld      r24,-64(1)          ld      r24,-64(r1)
         ld      r25,-56(1)          ld      r25,-56(r1)
         ld      r26,-48(1)          ld      r26,-48(r1)
         ld      r27,-40(1)          ld      r27,-40(r1)
         ld      r28,-32(1)          ld      r28,-32(r1)
         ld      r29,-24(1)          ld      r29,-24(r1)
         ld      r30,-16(1)          ld      r30,-16(r1)
         ld      r31,-8(1)          ld      r31,-8(r1)
         blr          blr
 EPILOGUE(mpn_lshift)  EPILOGUE(mpn_lshift)

Legend:
Removed from v.1.1.1.1  
changed lines
  Added in v.1.1.1.2

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>