=================================================================== RCS file: /home/cvs/OpenXM_contrib/gmp/mpn/x86/p6/Attic/sqr_basecase.asm,v retrieving revision 1.1.1.1 retrieving revision 1.1.1.2 diff -u -p -r1.1.1.1 -r1.1.1.2 --- OpenXM_contrib/gmp/mpn/x86/p6/Attic/sqr_basecase.asm 2000/09/09 14:12:44 1.1.1.1 +++ OpenXM_contrib/gmp/mpn/x86/p6/Attic/sqr_basecase.asm 2003/08/25 16:06:29 1.1.1.2 @@ -1,11 +1,6 @@ dnl Intel P6 mpn_sqr_basecase -- square an mpn number. -dnl -dnl P6: approx 4.0 cycles per cross product, or 7.75 cycles per triangular -dnl product (measured on the speed difference between 20 and 40 limbs, -dnl which is the Karatsuba recursing range). - -dnl Copyright (C) 1999, 2000 Free Software Foundation, Inc. +dnl Copyright 1999, 2000, 2002 Free Software Foundation, Inc. dnl dnl This file is part of the GNU MP Library. dnl @@ -24,21 +19,25 @@ dnl License along with the GNU MP Library; see the fi dnl not, write to the Free Software Foundation, Inc., 59 Temple Place - dnl Suite 330, Boston, MA 02111-1307, USA. - include(`../config.m4') +C P6: approx 4.0 cycles per cross product, or 7.75 cycles per triangular +C product (measured on the speed difference between 20 and 40 limbs, +C which is the Karatsuba recursing range). + + dnl These are the same as in mpn/x86/k6/sqr_basecase.asm, see that file for dnl a description. The only difference here is that UNROLL_COUNT can go up -dnl to 64 (not 63) making KARATSUBA_SQR_THRESHOLD_MAX 67. +dnl to 64 (not 63) making SQR_KARATSUBA_THRESHOLD_MAX 67. -deflit(KARATSUBA_SQR_THRESHOLD_MAX, 67) +deflit(SQR_KARATSUBA_THRESHOLD_MAX, 67) -ifdef(`KARATSUBA_SQR_THRESHOLD_OVERRIDE', -`define(`KARATSUBA_SQR_THRESHOLD',KARATSUBA_SQR_THRESHOLD_OVERRIDE)') +ifdef(`SQR_KARATSUBA_THRESHOLD_OVERRIDE', +`define(`SQR_KARATSUBA_THRESHOLD',SQR_KARATSUBA_THRESHOLD_OVERRIDE)') -m4_config_gmp_mparam(`KARATSUBA_SQR_THRESHOLD') -deflit(UNROLL_COUNT, eval(KARATSUBA_SQR_THRESHOLD-3)) +m4_config_gmp_mparam(`SQR_KARATSUBA_THRESHOLD') +deflit(UNROLL_COUNT, eval(SQR_KARATSUBA_THRESHOLD-3)) C void mpn_sqr_basecase (mp_ptr dst, mp_srcptr src, mp_size_t size); @@ -58,7 +57,7 @@ defframe(PARAM_SIZE,12) defframe(PARAM_SRC, 8) defframe(PARAM_DST, 4) - .text + TEXT ALIGN(32) PROLOGUE(mpn_sqr_basecase) deflit(`FRAME',0)