Module Name:    src
Committed By:   macallan
Date:           Tue May 13 18:46:48 UTC 2014

Modified Files:
        src/external/lgpl3/gmp/lib/libgmp/arch/mips64eb: Makefile.inc config.h
        src/external/lgpl3/gmp/lib/libgmp/arch/mips64el: Makefile.inc config.h

Log Message:
on mips64* use generic C functions instead of assembly routines when building
n32 binaries. Should work around PR48696
ok mrg@


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 \
    src/external/lgpl3/gmp/lib/libgmp/arch/mips64eb/Makefile.inc
cvs rdiff -u -r1.4 -r1.5 \
    src/external/lgpl3/gmp/lib/libgmp/arch/mips64eb/config.h
cvs rdiff -u -r1.5 -r1.6 \
    src/external/lgpl3/gmp/lib/libgmp/arch/mips64el/Makefile.inc
cvs rdiff -u -r1.4 -r1.5 \
    src/external/lgpl3/gmp/lib/libgmp/arch/mips64el/config.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/external/lgpl3/gmp/lib/libgmp/arch/mips64eb/Makefile.inc
diff -u src/external/lgpl3/gmp/lib/libgmp/arch/mips64eb/Makefile.inc:1.5 src/external/lgpl3/gmp/lib/libgmp/arch/mips64eb/Makefile.inc:1.6
--- src/external/lgpl3/gmp/lib/libgmp/arch/mips64eb/Makefile.inc:1.5	Wed Dec  4 00:49:18 2013
+++ src/external/lgpl3/gmp/lib/libgmp/arch/mips64eb/Makefile.inc	Tue May 13 18:46:48 2014
@@ -1,4 +1,4 @@
-#	$NetBSD: Makefile.inc,v 1.5 2013/12/04 00:49:18 mrg Exp $
+#	$NetBSD: Makefile.inc,v 1.6 2014/05/13 18:46:48 macallan Exp $
 
 SRCS+= \
 	random.c \
@@ -174,6 +174,24 @@ C_SRCS_LIST= \
 	sbpi1_div_r_sec.c	mpn/generic/sbpi1_div_sec.c \
 	andn_n.c		mpn/generic/logops_n.c \
 
+.if (defined(CPUFLAGS) && !empty(CPUFLAGS:M-mabi=64))
+GMP_LIMB_BITS=64
+C_SRCS_LIST= \
+	xor_n.c			mpn/generic/logops_n.c \
+	sb_div_r_sec.c		mpn/generic/sb_div_sec.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 \
+	sbpi1_div_qr_sec.c	mpn/generic/sbpi1_div_sec.c \
+	and_n.c			mpn/generic/logops_n.c \
+	ior_n.c			mpn/generic/logops_n.c \
+	sb_div_qr_sec.c		mpn/generic/sb_div_sec.c \
+	xnor_n.c		mpn/generic/logops_n.c \
+	iorn_n.c		mpn/generic/logops_n.c \
+	sbpi1_div_r_sec.c	mpn/generic/sbpi1_div_sec.c \
+	andn_n.c		mpn/generic/logops_n.c \
+
 ASM_SRCS_LIST= \
 	sqr_diagonal.asm	mpn/mips64/sqr_diagonal.asm \
 	add_n.asm		mpn/mips64/add_n.asm \
@@ -185,10 +203,35 @@ ASM_SRCS_LIST= \
 	addmul_1.asm		mpn/mips64/addmul_1.asm \
 	sub_n.asm		mpn/mips64/sub_n.asm \
 
-.if (defined(CPUFLAGS) && !empty(CPUFLAGS:M-mabi=64))
-GMP_LIMB_BITS=64
 .else
 GMP_LIMB_BITS=32
+C_SRCS_LIST= \
+	xor_n.c			mpn/generic/logops_n.c \
+	sb_div_r_sec.c		mpn/generic/sb_div_sec.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 \
+	sbpi1_div_qr_sec.c	mpn/generic/sbpi1_div_sec.c \
+	and_n.c			mpn/generic/logops_n.c \
+	ior_n.c			mpn/generic/logops_n.c \
+	sb_div_qr_sec.c		mpn/generic/sb_div_sec.c \
+	xnor_n.c		mpn/generic/logops_n.c \
+	iorn_n.c		mpn/generic/logops_n.c \
+	sbpi1_div_r_sec.c	mpn/generic/sbpi1_div_sec.c \
+	andn_n.c		mpn/generic/logops_n.c \
+	addn_n.c		mpn/generic/add_n.c \
+	submul_1.c		mpn/generic/submul_1.c \
+	lshift.c		mpn/generic/lshift.c \
+	mul_1.c			mpn/generic/mul_1.c \
+	rshift.c		mpn/generic/rshift.c \
+	sub_n.c			mpn/generic/sub_n.c \
+	addmul_1.c		mpn/generic/addmul_1.c \
+
+ASM_SRCS_LIST= 
+
 .endif
 
 COPTS+=		-Wno-error
+
+COPTS+=		-Wno-error

Index: src/external/lgpl3/gmp/lib/libgmp/arch/mips64eb/config.h
diff -u src/external/lgpl3/gmp/lib/libgmp/arch/mips64eb/config.h:1.4 src/external/lgpl3/gmp/lib/libgmp/arch/mips64eb/config.h:1.5
--- src/external/lgpl3/gmp/lib/libgmp/arch/mips64eb/config.h:1.4	Fri Nov 29 13:26:16 2013
+++ src/external/lgpl3/gmp/lib/libgmp/arch/mips64eb/config.h	Tue May 13 18:46:48 2014
@@ -221,9 +221,13 @@ along with the GNU MP Library.  If not, 
 
 /* Define to 1 each of the following for which a native (ie. CPU specific)
     implementation of the corresponding routine exists.  */
+#ifdef _LP64
 #define HAVE_NATIVE_mpn_add_n 1
+#endif
 /* #undef HAVE_NATIVE_mpn_add_n_sub_n */
+#ifdef _LP64
 #define HAVE_NATIVE_mpn_add_nc 1
+#endif
 /* #undef HAVE_NATIVE_mpn_addaddmul_1msb0 */
 /* #undef HAVE_NATIVE_mpn_addcnd_n */
 /* #undef HAVE_NATIVE_mpn_addlsh1_n */
@@ -272,7 +276,9 @@ along with the GNU MP Library.  If not, 
 /* #undef HAVE_NATIVE_mpn_invert_limb */
 /* #undef HAVE_NATIVE_mpn_ior_n */
 /* #undef HAVE_NATIVE_mpn_iorn_n */
+#ifdef _LP64
 #define HAVE_NATIVE_mpn_lshift 1
+#endif
 /* #undef HAVE_NATIVE_mpn_lshiftc */
 /* #undef HAVE_NATIVE_mpn_lshsub_n */
 /* #undef HAVE_NATIVE_mpn_mod_1 */
@@ -283,7 +289,9 @@ along with the GNU MP Library.  If not, 
 /* #undef HAVE_NATIVE_mpn_mod_34lsub1 */
 /* #undef HAVE_NATIVE_mpn_modexact_1_odd */
 /* #undef HAVE_NATIVE_mpn_modexact_1c_odd */
+#ifdef _LP64
 #define HAVE_NATIVE_mpn_mul_1 1
+#endif
 /* #undef HAVE_NATIVE_mpn_mul_1c */
 /* #undef HAVE_NATIVE_mpn_mul_2 */
 /* #undef HAVE_NATIVE_mpn_mul_3 */
@@ -308,12 +316,18 @@ along with the GNU MP Library.  If not, 
 /* #undef HAVE_NATIVE_mpn_rsh1add_nc */
 /* #undef HAVE_NATIVE_mpn_rsh1sub_n */
 /* #undef HAVE_NATIVE_mpn_rsh1sub_nc */
+#ifdef _LP64
 #define HAVE_NATIVE_mpn_rshift 1
+#endif
 /* #undef HAVE_NATIVE_mpn_sqr_basecase */
+#ifdef _LP64
 #define HAVE_NATIVE_mpn_sqr_diagonal 1
+#endif
 /* #undef HAVE_NATIVE_mpn_sqr_diag_addlsh1 */
+#ifdef _LP64
 #define HAVE_NATIVE_mpn_sub_n 1
 #define HAVE_NATIVE_mpn_sub_nc 1
+#endif
 /* #undef HAVE_NATIVE_mpn_subcnd_n */
 /* #undef HAVE_NATIVE_mpn_sublsh1_n */
 /* #undef HAVE_NATIVE_mpn_sublsh2_n */
@@ -331,7 +345,9 @@ along with the GNU MP Library.  If not, 
 /* #undef HAVE_NATIVE_mpn_tabselect */
 /* #undef HAVE_NATIVE_mpn_udiv_qrnnd */
 /* #undef HAVE_NATIVE_mpn_udiv_qrnnd_r */
+#ifdef _LP64
 #define HAVE_NATIVE_mpn_umul_ppmm 1
+#endif
 /* #undef HAVE_NATIVE_mpn_umul_ppmm_r */
 /* #undef HAVE_NATIVE_mpn_xor_n */
 /* #undef HAVE_NATIVE_mpn_xnor_n */

Index: src/external/lgpl3/gmp/lib/libgmp/arch/mips64el/Makefile.inc
diff -u src/external/lgpl3/gmp/lib/libgmp/arch/mips64el/Makefile.inc:1.5 src/external/lgpl3/gmp/lib/libgmp/arch/mips64el/Makefile.inc:1.6
--- src/external/lgpl3/gmp/lib/libgmp/arch/mips64el/Makefile.inc:1.5	Wed Dec  4 00:49:18 2013
+++ src/external/lgpl3/gmp/lib/libgmp/arch/mips64el/Makefile.inc	Tue May 13 18:46:48 2014
@@ -1,4 +1,4 @@
-#	$NetBSD: Makefile.inc,v 1.5 2013/12/04 00:49:18 mrg Exp $
+#	$NetBSD: Makefile.inc,v 1.6 2014/05/13 18:46:48 macallan Exp $
 
 SRCS+= \
 	random.c \
@@ -158,6 +158,8 @@ SRCS+= \
 	redc_n.c \
 	sub_err1_n.c \
 
+.if (defined(CPUFLAGS) && !empty(CPUFLAGS:M-mabi=64))
+GMP_LIMB_BITS=64
 C_SRCS_LIST= \
 	xor_n.c			mpn/generic/logops_n.c \
 	sb_div_r_sec.c		mpn/generic/sb_div_sec.c \
@@ -185,10 +187,33 @@ ASM_SRCS_LIST= \
 	addmul_1.asm		mpn/mips64/addmul_1.asm \
 	sub_n.asm		mpn/mips64/sub_n.asm \
 
-.if (defined(CPUFLAGS) && !empty(CPUFLAGS:M-mabi=64))
-GMP_LIMB_BITS=64
 .else
 GMP_LIMB_BITS=32
+C_SRCS_LIST= \
+	xor_n.c			mpn/generic/logops_n.c \
+	sb_div_r_sec.c		mpn/generic/sb_div_sec.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 \
+	sbpi1_div_qr_sec.c	mpn/generic/sbpi1_div_sec.c \
+	and_n.c			mpn/generic/logops_n.c \
+	ior_n.c			mpn/generic/logops_n.c \
+	sb_div_qr_sec.c		mpn/generic/sb_div_sec.c \
+	xnor_n.c		mpn/generic/logops_n.c \
+	iorn_n.c		mpn/generic/logops_n.c \
+	sbpi1_div_r_sec.c	mpn/generic/sbpi1_div_sec.c \
+	andn_n.c		mpn/generic/logops_n.c \
+	addn_n.c		mpn/generic/add_n.c \
+	submul_1.c		mpn/generic/submul_1.c \
+	lshift.c		mpn/generic/lshift.c \
+	mul_1.c			mpn/generic/mul_1.c \
+	rshift.c		mpn/generic/rshift.c \
+	sub_n.c			mpn/generic/sub_n.c \
+	addmul_1.c		mpn/generic/addmul_1.c \
+
+ASM_SRCS_LIST= 
+
 .endif
 
 COPTS+=		-Wno-error

Index: src/external/lgpl3/gmp/lib/libgmp/arch/mips64el/config.h
diff -u src/external/lgpl3/gmp/lib/libgmp/arch/mips64el/config.h:1.4 src/external/lgpl3/gmp/lib/libgmp/arch/mips64el/config.h:1.5
--- src/external/lgpl3/gmp/lib/libgmp/arch/mips64el/config.h:1.4	Fri Nov 29 13:26:16 2013
+++ src/external/lgpl3/gmp/lib/libgmp/arch/mips64el/config.h	Tue May 13 18:46:48 2014
@@ -221,9 +221,13 @@ along with the GNU MP Library.  If not, 
 
 /* Define to 1 each of the following for which a native (ie. CPU specific)
     implementation of the corresponding routine exists.  */
+#ifdef _LP64
 #define HAVE_NATIVE_mpn_add_n 1
+#endif
 /* #undef HAVE_NATIVE_mpn_add_n_sub_n */
+#ifdef _LP64
 #define HAVE_NATIVE_mpn_add_nc 1
+#endif
 /* #undef HAVE_NATIVE_mpn_addaddmul_1msb0 */
 /* #undef HAVE_NATIVE_mpn_addcnd_n */
 /* #undef HAVE_NATIVE_mpn_addlsh1_n */
@@ -272,7 +276,9 @@ along with the GNU MP Library.  If not, 
 /* #undef HAVE_NATIVE_mpn_invert_limb */
 /* #undef HAVE_NATIVE_mpn_ior_n */
 /* #undef HAVE_NATIVE_mpn_iorn_n */
+#ifdef _LP64
 #define HAVE_NATIVE_mpn_lshift 1
+#endif
 /* #undef HAVE_NATIVE_mpn_lshiftc */
 /* #undef HAVE_NATIVE_mpn_lshsub_n */
 /* #undef HAVE_NATIVE_mpn_mod_1 */
@@ -283,7 +289,9 @@ along with the GNU MP Library.  If not, 
 /* #undef HAVE_NATIVE_mpn_mod_34lsub1 */
 /* #undef HAVE_NATIVE_mpn_modexact_1_odd */
 /* #undef HAVE_NATIVE_mpn_modexact_1c_odd */
+#ifdef _LP64
 #define HAVE_NATIVE_mpn_mul_1 1
+#endif
 /* #undef HAVE_NATIVE_mpn_mul_1c */
 /* #undef HAVE_NATIVE_mpn_mul_2 */
 /* #undef HAVE_NATIVE_mpn_mul_3 */
@@ -308,12 +316,20 @@ along with the GNU MP Library.  If not, 
 /* #undef HAVE_NATIVE_mpn_rsh1add_nc */
 /* #undef HAVE_NATIVE_mpn_rsh1sub_n */
 /* #undef HAVE_NATIVE_mpn_rsh1sub_nc */
+#ifdef _LP64
 #define HAVE_NATIVE_mpn_rshift 1
+#endif
 /* #undef HAVE_NATIVE_mpn_sqr_basecase */
+#ifdef _LP64
 #define HAVE_NATIVE_mpn_sqr_diagonal 1
+#endif
 /* #undef HAVE_NATIVE_mpn_sqr_diag_addlsh1 */
+#ifdef _LP64
 #define HAVE_NATIVE_mpn_sub_n 1
+#endif
+#ifdef _LP64
 #define HAVE_NATIVE_mpn_sub_nc 1
+#endif
 /* #undef HAVE_NATIVE_mpn_subcnd_n */
 /* #undef HAVE_NATIVE_mpn_sublsh1_n */
 /* #undef HAVE_NATIVE_mpn_sublsh2_n */
@@ -331,7 +347,9 @@ along with the GNU MP Library.  If not, 
 /* #undef HAVE_NATIVE_mpn_tabselect */
 /* #undef HAVE_NATIVE_mpn_udiv_qrnnd */
 /* #undef HAVE_NATIVE_mpn_udiv_qrnnd_r */
+#ifdef _LP64
 #define HAVE_NATIVE_mpn_umul_ppmm 1
+#endif
 /* #undef HAVE_NATIVE_mpn_umul_ppmm_r */
 /* #undef HAVE_NATIVE_mpn_xor_n */
 /* #undef HAVE_NATIVE_mpn_xnor_n */

Reply via email to