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 - add support for buildin...



details:   https://anonhg.NetBSD.org/src/rev/514116449378
branches:  trunk
changeset: 766725:514116449378
user:      mrg <mrg%NetBSD.org@localhost>
date:      Fri Jul 01 01:51:02 2011 +0000

description:
- add support for building GMP for powerpc, sparc, arm and armeb.
- XXX armeb files modified from arm, not based upon generated ones.

diffstat:

 external/lgpl3/gmp/lib/libgmp/arch/arm/Makefile.inc     |   189 +
 external/lgpl3/gmp/lib/libgmp/arch/arm/config.h         |   587 +++
 external/lgpl3/gmp/lib/libgmp/arch/arm/config.m4        |    34 +
 external/lgpl3/gmp/lib/libgmp/arch/arm/gmp-mparam.h     |   142 +
 external/lgpl3/gmp/lib/libgmp/arch/arm/gmp.h            |  2280 +++++++++++++++
 external/lgpl3/gmp/lib/libgmp/arch/arm/mp.h             |   164 +
 external/lgpl3/gmp/lib/libgmp/arch/armeb/Makefile.inc   |   189 +
 external/lgpl3/gmp/lib/libgmp/arch/armeb/config.h       |   587 +++
 external/lgpl3/gmp/lib/libgmp/arch/armeb/config.m4      |    34 +
 external/lgpl3/gmp/lib/libgmp/arch/armeb/gmp-mparam.h   |   142 +
 external/lgpl3/gmp/lib/libgmp/arch/armeb/gmp.h          |  2280 +++++++++++++++
 external/lgpl3/gmp/lib/libgmp/arch/armeb/mp.h           |   164 +
 external/lgpl3/gmp/lib/libgmp/arch/powerpc/Makefile.inc |   192 +
 external/lgpl3/gmp/lib/libgmp/arch/powerpc/config.h     |   587 +++
 external/lgpl3/gmp/lib/libgmp/arch/powerpc/config.m4    |    38 +
 external/lgpl3/gmp/lib/libgmp/arch/powerpc/gmp-mparam.h |   191 +
 external/lgpl3/gmp/lib/libgmp/arch/powerpc/gmp.h        |  2280 +++++++++++++++
 external/lgpl3/gmp/lib/libgmp/arch/powerpc/mp.h         |   164 +
 external/lgpl3/gmp/lib/libgmp/arch/sparc/Makefile.inc   |   189 +
 external/lgpl3/gmp/lib/libgmp/arch/sparc/config.h       |   587 +++
 external/lgpl3/gmp/lib/libgmp/arch/sparc/config.m4      |    35 +
 external/lgpl3/gmp/lib/libgmp/arch/sparc/gmp-mparam.h   |    57 +
 external/lgpl3/gmp/lib/libgmp/arch/sparc/gmp.h          |  2280 +++++++++++++++
 external/lgpl3/gmp/lib/libgmp/arch/sparc/mp.h           |   164 +
 24 files changed, 13556 insertions(+), 0 deletions(-)

diffs (truncated from 13652 to 300 lines):

diff -r cfa81979bb6e -r 514116449378 external/lgpl3/gmp/lib/libgmp/arch/arm/Makefile.inc
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/external/lgpl3/gmp/lib/libgmp/arch/arm/Makefile.inc       Fri Jul 01 01:51:02 2011 +0000
@@ -0,0 +1,189 @@
+#      $NetBSD: Makefile.inc,v 1.1 2011/07/01 01:51:02 mrg Exp $
+
+SRCS+= \
+       random.c \
+       divrem_2.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 \
+       mu_divappr_q.c \
+       dcpi1_div_qr.c \
+       redc_1_sec.c \
+       toom6_sqr.c \
+       divrem_1.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 \
+       lshift.c \
+       toom_couple_handling.c \
+       add.c \
+       toom_interpolate_12pts.c \
+       perfsqr.c \
+       toom53_mul.c \
+       toom_eval_pm2exp.c \
+       mu_div_qr.c \
+       toom_interpolate_16pts.c \
+       mod_34lsub1.c \
+       bdiv_q.c \
+       toom22_mul.c \
+       rshift.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 \
+       sqr_basecase.c \
+       toom_interpolate_5pts.c \
+       sbpi1_bdiv_q.c \
+       pre_mod_1.c \
+       hgcd.c \
+       bdiv_dbm1c.c \
+       sqrtrem.c \
+       bdiv_q_1.c \
+       gcdext_1.c \
+       toom63_mul.c \
+       mul_basecase.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 \
+       dive_1.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/arm/add_n.asm \
+       submul_1.asm            mpn/arm/submul_1.asm \
+       mul_1.asm               mpn/arm/mul_1.asm \
+       copyd.asm               mpn/arm/copyd.asm \
+       udiv.asm                mpn/arm/udiv.asm \
+       copyi.asm               mpn/arm/copyi.asm \
+       invert_limb.asm         mpn/arm/invert_limb.asm \
+       addmul_1.asm            mpn/arm/addmul_1.asm \
+       sub_n.asm               mpn/arm/sub_n.asm \
+
+gen-trialdivtab: gen-trialdivtab.c
+       ${HOST_CC} -o ${.OBJDIR}/gen-trialdivtab ${.ALLSRC} -lm
+
+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 cfa81979bb6e -r 514116449378 external/lgpl3/gmp/lib/libgmp/arch/arm/config.h
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/external/lgpl3/gmp/lib/libgmp/arch/arm/config.h   Fri Jul 01 01:51:02 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/src3/external/lgpl3/gmp/dist/mpn/arm/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
+   */
+/* #undef HAVE_CALLING_CONVENTIONS */
+
+/* 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. */
+#define HAVE_DLFCN_H 1
+
+/* Define one of the following to 1 for the format of a `double'.
+   If your format is not among these choices, or you don't know what it is,



Home | Main Index | Thread Index | Old Index