[BACK]Return to mul_basecase.asm CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / gmp / mpn / x86 / k6

Diff for /OpenXM_contrib/gmp/mpn/x86/k6/Attic/mul_basecase.asm between version 1.1.1.1 and 1.1.1.2

version 1.1.1.1, 2000/09/09 14:12:42 version 1.1.1.2, 2003/08/25 16:06:28
Line 1 
Line 1 
 dnl  AMD K6 mpn_mul_basecase -- multiply two mpn numbers.  dnl  AMD K6 mpn_mul_basecase -- multiply two mpn numbers.
 dnl  
 dnl  K6: approx 9.0 cycles per cross product on 30x30 limbs (with 16 limbs/loop  
 dnl      unrolling).  
   
   dnl  Copyright 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
 dnl  Copyright (C) 1999, 2000 Free Software Foundation, Inc.  
 dnl  dnl
 dnl  This file is part of the GNU MP Library.  dnl  This file is part of the GNU MP Library.
 dnl  dnl
Line 23  dnl  License along with the GNU MP Library; see the fi
Line 19  dnl  License along with the GNU MP Library; see the fi
 dnl  not, write to the Free Software Foundation, Inc., 59 Temple Place -  dnl  not, write to the Free Software Foundation, Inc., 59 Temple Place -
 dnl  Suite 330, Boston, MA 02111-1307, USA.  dnl  Suite 330, Boston, MA 02111-1307, USA.
   
   
 include(`../config.m4')  include(`../config.m4')
   
   
   C K6: approx 9.0 cycles per cross product on 30x30 limbs (with 16 limbs/loop
   C     unrolling).
   
   
   
 dnl  K6: UNROLL_COUNT cycles/product (approx)  dnl  K6: UNROLL_COUNT cycles/product (approx)
 dnl           8           9.75  dnl           8           9.75
 dnl          16           9.3  dnl          16           9.3
Line 69  defframe(PARAM_XSIZE,12)
Line 69  defframe(PARAM_XSIZE,12)
 defframe(PARAM_XP,   8)  defframe(PARAM_XP,   8)
 defframe(PARAM_WP,   4)  defframe(PARAM_WP,   4)
   
         .text          TEXT
         ALIGN(32)          ALIGN(32)
 PROLOGUE(mpn_mul_basecase)  PROLOGUE(mpn_mul_basecase)
 deflit(`FRAME',0)  deflit(`FRAME',0)
Line 482  L(unroll_here):
Line 482  L(unroll_here):
   
 ifdef(`PIC',`  ifdef(`PIC',`
 L(pic_calc):  L(pic_calc):
         C See README.family about old gas bugs          C See mpn/x86/README about old gas bugs
         leal    (%ecx,%esi,1), %ecx          leal    (%ecx,%esi,1), %ecx
         addl    $L(unroll_entry)-L(unroll_here), %ecx          addl    $L(unroll_entry)-L(unroll_here), %ecx
         addl    (%esp), %ecx          addl    (%esp), %ecx

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

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