Source-Changes-HG archive

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

[src/trunk]: src/external/lgpl3/gmp/lib/libgmp/arch/i386 Makefile and other s...



details:   https://anonhg.NetBSD.org/src/rev/b9afe5788f63
branches:  trunk
changeset: 766665:b9afe5788f63
user:      mrg <mrg%NetBSD.org@localhost>
date:      Wed Jun 29 08:06:47 2011 +0000

description:
Makefile and other snippets for gmp on i386.

XXX: this uses the LCD i486 parts, which may not be the fastest

diffstat:

 external/lgpl3/gmp/lib/libgmp/arch/i386/Makefile.inc |   193 +
 external/lgpl3/gmp/lib/libgmp/arch/i386/config.h     |   587 ++++
 external/lgpl3/gmp/lib/libgmp/arch/i386/config.m4    |    39 +
 external/lgpl3/gmp/lib/libgmp/arch/i386/gmp-mparam.h |    58 +
 external/lgpl3/gmp/lib/libgmp/arch/i386/gmp.h        |  2280 ++++++++++++++++++
 external/lgpl3/gmp/lib/libgmp/arch/i386/mp.h         |   164 +
 6 files changed, 3321 insertions(+), 0 deletions(-)

diffs (truncated from 3345 to 300 lines):

diff -r e441497ed3b6 -r b9afe5788f63 external/lgpl3/gmp/lib/libgmp/arch/i386/Makefile.inc
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/external/lgpl3/gmp/lib/libgmp/arch/i386/Makefile.inc      Wed Jun 29 08:06:47 2011 +0000
@@ -0,0 +1,193 @@
+#      $NetBSD: Makefile.inc,v 1.1 2011/06/29 08:06:47 mrg Exp $
+
+SRCS+= \
+       random.c \
+       toom_interpolate_7pts.c \
+       sbpi1_divappr_q.c \
+       random2.c \
+       mu_bdiv_q.c \
+       toom32_mul.c \
+       toom44_mul.c \
+       toom8h_mul.c \
+       toom2_sqr.c \
+       zero.c \
+       mod_1_4.c \
+       gcdext.c \
+       binvert.c \
+       mu_div_q.c \
+       invertappr.c \
+       dump.c \
+       dcpi1_div_qr.c \
+       mu_divappr_q.c \
+       redc_1_sec.c \
+       toom6_sqr.c \
+       mod_1.c \
+       divexact.c \
+       powlo.c \
+       mul.c \
+       set_str.c \
+       toom42_mul.c \
+       toom_interpolate_6pts.c \
+       dcpi1_divappr_q.c \
+       toom_eval_dgr3_pm2.c \
+       mod_1_3.c \
+       com.c \
+       toom_couple_handling.c \
+       add.c \
+       toom_interpolate_12pts.c \
+       perfsqr.c \
+       toom53_mul.c \
+       toom_eval_pm2exp.c \
+       toom_interpolate_16pts.c \
+       mu_div_qr.c \
+       bdiv_q.c \
+       toom22_mul.c \
+       toom4_sqr.c \
+       div_q.c \
+       jacbase.c \
+       gcdext_subdiv_step.c \
+       mullo_n.c \
+       toom33_mul.c \
+       toom_eval_dgr3_pm1.c \
+       mod_1_2.c \
+       sub_1.c \
+       trialdiv.c \
+       add_1.c \
+       toom_interpolate_5pts.c \
+       sbpi1_bdiv_q.c \
+       pre_mod_1.c \
+       hgcd.c \
+       sqrtrem.c \
+       gcdext_1.c \
+       toom63_mul.c \
+       bdiv_q_1.c \
+       toom8_sqr.c \
+       neg.c \
+       gcdext_lehmer.c \
+       divis.c \
+       dcpi1_div_q.c \
+       subcnd_n.c \
+       toom_eval_pm2.c \
+       hgcd2.c \
+       toom62_mul.c \
+       sbpi1_bdiv_qr.c \
+       scan1.c \
+       pre_divrem_1.c \
+       perfpow.c \
+       get_str.c \
+       mullo_basecase.c \
+       mulmod_bnm1.c \
+       tdiv_qr.c \
+       toom43_mul.c \
+       mod_1_1.c \
+       matrix22_mul.c \
+       powm_sec.c \
+       divrem.c \
+       gcd_1.c \
+       dcpi1_bdiv_qr.c \
+       mul_n.c \
+       redc_2.c \
+       toom6h_mul.c \
+       mul_fft.c \
+       sqrmod_bnm1.c \
+       powm.c \
+       rootrem.c \
+       mode1o.c \
+       toom_interpolate_8pts.c \
+       remove.c \
+       lshiftc.c \
+       cmp.c \
+       toom_eval_pm1.c \
+       scan0.c \
+       gcd_subdiv_step.c \
+       sbpi1_div_qr.c \
+       invert.c \
+       sub.c \
+       toom_eval_pm2rexp.c \
+       dcpi1_bdiv_q.c \
+       redc_1.c \
+       sqr.c \
+       nussbaumer_mul.c \
+       mu_bdiv_qr.c \
+       pow_1.c \
+       gcd_lehmer.c \
+       get_d.c \
+       toom52_mul.c \
+       sbpi1_div_q.c \
+       diveby3.c \
+       fib2_ui.c \
+       bdiv_qr.c \
+       toom3_sqr.c \
+       gcd.c \
+       redc_n.c \
+
+C_SRCS_LIST= \
+       xor_n.c         mpn/generic/logops_n.c \
+       nand_n.c                mpn/generic/logops_n.c \
+       nior_n.c                mpn/generic/logops_n.c \
+       hamdist.c               mpn/generic/popham.c \
+       popcount.c              mpn/generic/popham.c \
+       and_n.c         mpn/generic/logops_n.c \
+       ior_n.c         mpn/generic/logops_n.c \
+       xnor_n.c                mpn/generic/logops_n.c \
+       iorn_n.c                mpn/generic/logops_n.c \
+       andn_n.c                mpn/generic/logops_n.c \
+
+ASM_SRCS_LIST= \
+       add_n.asm               mpn/x86/aors_n.asm \
+       sqr_basecase.asm                mpn/x86/sqr_basecase.asm \
+       submul_1.asm            mpn/x86/aorsmul_1.asm \
+       umul.asm                mpn/x86/umul.asm \
+       mul_basecase.asm                mpn/x86/mul_basecase.asm \
+       lshift.asm              mpn/x86/lshift.asm \
+       mul_1.asm               mpn/x86/mul_1.asm \
+       divrem_1.asm            mpn/x86/divrem_1.asm \
+       copyd.asm               mpn/x86/copyd.asm \
+       bdiv_dbm1c.asm          mpn/x86/bdiv_dbm1c.asm \
+       udiv.asm                mpn/x86/udiv.asm \
+       dive_1.asm              mpn/x86/dive_1.asm \
+       copyi.asm               mpn/x86/copyi.asm \
+       rshift.asm              mpn/x86/rshift.asm \
+       mod_34lsub1.asm         mpn/x86/mod_34lsub1.asm \
+       invert_limb.asm         mpn/x86/invert_limb.asm \
+       addmul_1.asm            mpn/x86/aorsmul_1.asm \
+       divrem_2.asm            mpn/x86/divrem_2.asm \
+       sub_n.asm               mpn/x86/aors_n.asm \
+
+gen-trialdivtab: gen-trialdivtab.c
+       ${HOST_CC} -o ${.OBJDIR}/gen-trialdivtab ${.ALLSRC} -lm
+
+# XXX
+# XXX is this right?
+GMP_LIMB_BITS=32
+
+trialdiv.c: trialdivtab.h
+trialdivtab.h: gen-trialdivtab
+       ${.OBJDIR}/gen-trialdivtab $(GMP_LIMB_BITS) 8000 > ${.OBJDIR}/trialdivtab.h
+
+CLEANFILES+=   trialdivtab.h
+
+# XXX stuff looks for "../config.m4"
+dummy:
+       mkdir dummy
+${.OBJDIR}/config.m4: ${.CURDIR}/arch/${MACHINE_ARCH}/config.m4
+       cp ${.CURDIR}/arch/${MACHINE_ARCH}/config.m4 ${.TARGET}
+
+.for _build _src in ${ASM_SRCS_LIST}
+${_build:R}.s: Makefile dummy ${.OBJDIR}/config.m4
+       ${TOOL_M4} -DCONFIG_TOP_SRCDIR=${DIST} -I${.CURDIR} -I${.OBJDIR}/dummy -I${DIST}/ -I${DIST}/mpn -DOPERATION_${.TARGET:R} ${DIST}/${_src} > ${.TARGET}
+
+SRCS+= ${_build:R}.s
+
+.endfor
+
+.for _build _src in ${C_SRCS_LIST}
+mpn_${_build}: Makefile
+       echo '#include "${_src}"' > ${.TARGET}
+
+CPPFLAGS.mpn_${_build}+= -DOPERATION_${_build:R}
+
+SRCS+=         mpn_${_build}
+CLEANFILES+=   mpn_${_build}
+.endfor
+
diff -r e441497ed3b6 -r b9afe5788f63 external/lgpl3/gmp/lib/libgmp/arch/i386/config.h
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/external/lgpl3/gmp/lib/libgmp/arch/i386/config.h  Wed Jun 29 08:06:47 2011 +0000
@@ -0,0 +1,587 @@
+/* config.h.  Generated from config.in by configure.  */
+/* config.in.  Generated from configure.in by autoheader.  */
+
+/*
+
+Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
+2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+
+This file is part of the GNU MP Library.
+
+The GNU MP Library is free software; you can redistribute it and/or modify
+it under the terms of the GNU Lesser General Public License as published
+by the Free Software Foundation; either version 3 of the License, or (at
+your option) any later version.
+
+The GNU MP Library is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public
+License for more details.
+
+You should have received a copy of the GNU Lesser General Public License
+along with the GNU MP Library.  If not, see http://www.gnu.org/licenses/.
+*/
+
+/* Define if building universal (internal helper macro) */
+/* #undef AC_APPLE_UNIVERSAL_BUILD */
+
+/* The gmp-mparam.h file (a string) the tune program should suggest updating.
+   */
+#define GMP_MPARAM_H_SUGGEST "/usr/src/external/lgpl3/gmp/dist/mpn/x86/i486/gmp-mparam.h"
+
+/* Define to 1 if you have the `alarm' function. */
+#define HAVE_ALARM 1
+
+/* Define to 1 if alloca() works (via gmp-impl.h). */
+#define HAVE_ALLOCA 1
+
+/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
+   */
+/* #undef HAVE_ALLOCA_H */
+
+/* Define to 1 if the compiler accepts gcc style __attribute__ ((const)) */
+#define HAVE_ATTRIBUTE_CONST 1
+
+/* Define to 1 if the compiler accepts gcc style __attribute__ ((malloc)) */
+#define HAVE_ATTRIBUTE_MALLOC 1
+
+/* Define to 1 if the compiler accepts gcc style __attribute__ ((mode (XX)))
+   */
+#define HAVE_ATTRIBUTE_MODE 1
+
+/* Define to 1 if the compiler accepts gcc style __attribute__ ((noreturn)) */
+#define HAVE_ATTRIBUTE_NORETURN 1
+
+/* Define to 1 if you have the `attr_get' function. */
+/* #undef HAVE_ATTR_GET */
+
+/* Define to 1 if tests/libtests has calling conventions checking for the CPU
+   */
+#define HAVE_CALLING_CONVENTIONS 1
+
+/* Define to 1 if you have the `clock' function. */
+#define HAVE_CLOCK 1
+
+/* Define to 1 if you have the `clock_gettime' function. */
+#define HAVE_CLOCK_GETTIME 1
+
+/* Define to 1 if you have the `cputime' function. */
+/* #undef HAVE_CPUTIME */
+
+/* Define to 1 if you have the declaration of `fgetc', and to 0 if you don't.
+   */
+#define HAVE_DECL_FGETC 1
+
+/* Define to 1 if you have the declaration of `fscanf', and to 0 if you don't.
+   */
+#define HAVE_DECL_FSCANF 1
+
+/* Define to 1 if you have the declaration of `optarg', and to 0 if you don't.
+   */
+#define HAVE_DECL_OPTARG 1
+
+/* Define to 1 if you have the declaration of `sys_errlist', and to 0 if you
+   don't. */
+#define HAVE_DECL_SYS_ERRLIST 1
+
+/* Define to 1 if you have the declaration of `sys_nerr', and to 0 if you
+   don't. */
+#define HAVE_DECL_SYS_NERR 1
+
+/* Define to 1 if you have the declaration of `ungetc', and to 0 if you don't.
+   */
+#define HAVE_DECL_UNGETC 1
+
+/* Define to 1 if you have the declaration of `vfprintf', and to 0 if you
+   don't. */
+#define HAVE_DECL_VFPRINTF 1
+
+/* Define to 1 if you have the <dlfcn.h> header file. */



Home | Main Index | Thread Index | Old Index