summaryrefslogtreecommitdiff
path: root/macos
diff options
context:
space:
mode:
authorKent Boortz <kent@mysql.se>2000-07-25 23:34:36 +0200
committerKent Boortz <kent@mysql.se>2000-07-25 23:34:36 +0200
commit43d1e272a2036f2b9ecb49ac2f776b54df8b72b0 (patch)
tree1dc7c8abe35c9a7ab61dcc5b29d37ced74d544c0 /macos
parent6a0572e47104fba7fcc9f38895a622a3048e0465 (diff)
downloadgmp-43d1e272a2036f2b9ecb49ac2f776b54df8b72b0.tar.gz
We don't distribute pre-configured files for MacOS after all
Diffstat (limited to 'macos')
-rw-r--r--macos/Asm/add_n.s1
-rw-r--r--macos/Asm/addmul_1.s1
-rw-r--r--macos/Asm/dummy1
-rw-r--r--macos/Asm/lshift.s1
-rw-r--r--macos/Asm/mul_1.s1
-rw-r--r--macos/Asm/rshift.s1
-rw-r--r--macos/Asm/sub_n.s1
-rw-r--r--macos/Asm/submul_1.s1
-rw-r--r--macos/AsmObj/dummy1
-rw-r--r--macos/CmnObj/dummy1
-rw-r--r--macos/Makefile1
-rw-r--r--macos/Makefile.cw1
-rw-r--r--macos/MpfBin/dummy1
-rw-r--r--macos/MpfObj/dummy1
-rw-r--r--macos/MpnObj/dummy1
-rw-r--r--macos/MpqBin/dummy1
-rw-r--r--macos/MpqObj/dummy1
-rw-r--r--macos/MpzBin/dummy1
-rw-r--r--macos/MpzObj/dummy1
-rw-r--r--macos/README67
-rw-r--r--macos/config.h159
21 files changed, 27 insertions, 218 deletions
diff --git a/macos/Asm/add_n.s b/macos/Asm/add_n.s
deleted file mode 100644
index a76bfe1a6..000000000
--- a/macos/Asm/add_n.s
+++ /dev/null
@@ -1 +0,0 @@
-; PowerPC-32 mpn_add_n -- Add two limb vectors of the same length > 0 and ; store sum in a third limb vector. ; Copyright (C) 1995, 1997, 2000 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 Library General Public License as published by ; the Free Software Foundation; either version 2 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 Library General Public ; License for more details. ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to ; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, ; MA 02111-1307, USA. ; INPUT PARAMETERS ; res_ptr r3 ; s1_ptr r4 ; s2_ptr r5 ; size r6 toc EXPORT __gmpn_add_n[DS] EXPORT .__gmpn_add_n[PR] TC __gmpn_add_n[TC], __gmpn_add_n[DS] CSECT __gmpn_add_n[DS] DC.L .__gmpn_add_n[PR] DC.L TOC[tc0] CSECT .__gmpn_add_n[PR] FUNCTION .__gmpn_add_n[PR] mtctr r6 ; copy size into CTR addic r0,r0,0 ; clear cy lwz r8,0(r4) ; load least significant s1 limb lwz r0,0(r5) ; load least significant s2 limb addi r3,r3,-4 ; offset res_ptr, it's updated before it's used bdz .Lend ; If done, skip loop .Loop: lwz r9,4(r4) ; load s1 limb lwz r10,4(r5) ; load s2 limb adde r7,r0,r8 ; add limbs with cy, set cy stw r7,4(r3) ; store result limb bdz .Lexit ; decrement CTR and exit if done lwzu r8,8(r4) ; load s1 limb and update s1_ptr lwzu r0,8(r5) ; load s2 limb and update s2_ptr adde r7,r10,r9 ; add limbs with cy, set cy stwu r7,8(r3) ; store result limb and update res_ptr bdnz .Loop ; decrement CTR and loop back .Lend: adde r7,r0,r8 stw r7,4(r3) ; store ultimate result limb li r3,0 ; load cy into ... addze r3,r3 ; ... return value register blr .Lexit: adde r7,r10,r9 stw r7,8(r3) li r3,0 ; load cy into ... addze r3,r3 ; ... return value register blr csect .__gmpn_add_n[pr] \ No newline at end of file
diff --git a/macos/Asm/addmul_1.s b/macos/Asm/addmul_1.s
deleted file mode 100644
index efa6b18db..000000000
--- a/macos/Asm/addmul_1.s
+++ /dev/null
@@ -1 +0,0 @@
-; PowerPC-32 mpn_addmul_1 -- Multiply a limb vector with a limb and add ; the result to a second limb vector. ; Copyright (C) 1995, 1997, 1998, 2000 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 Library General Public License as published by ; the Free Software Foundation; either version 2 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 Library General Public ; License for more details. ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to ; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, ; MA 02111-1307, USA. ; INPUT PARAMETERS ; res_ptr r3 ; s1_ptr r4 ; size r5 ; s2_limb r6 ; This is optimized for the PPC604. It has not been tested on PPC601, PPC603 ; or PPC750 since I don't have access to any such machines. toc EXPORT __gmpn_addmul_1[DS] EXPORT .__gmpn_addmul_1[PR] TC __gmpn_addmul_1[TC], __gmpn_addmul_1[DS] CSECT __gmpn_addmul_1[DS] DC.L .__gmpn_addmul_1[PR] DC.L TOC[tc0] CSECT .__gmpn_addmul_1[PR] FUNCTION .__gmpn_addmul_1[PR] cmpi cr0,r5,9 ; more than 9 limbs? bgt cr0,.Lbig ; branch if more than 9 limbs mtctr r5 lwz r0,0(r4) mullw r7,r0,r6 mulhwu r10,r0,r6 lwz r9,0(r3) addc r8,r7,r9 addi r3,r3,-4 bdz .Lend .Lloop: lwzu r0,4(r4) stwu r8,4(r3) mullw r8,r0,r6 adde r7,r8,r10 mulhwu r10,r0,r6 lwz r9,4(r3) addze r10,r10 addc r8,r7,r9 bdnz .Lloop .Lend: stw r8,4(r3) addze r3,r10 blr .Lbig: stmw r30,-32(r1) addi r5,r5,-1 srwi r0,r5,2 mtctr r0 lwz r7,0(r4) mullw r8,r7,r6 mulhwu r0,r7,r6 lwz r7,0(r3) addc r8,r8,r7 stw r8,0(r3) .LloopU: lwz r7,4(r4) lwz r12,8(r4) lwz r30,12(r4) lwzu r31,16(r4) mullw r8,r7,r6 mullw r9,r12,r6 mullw r10,r30,r6 mullw r11,r31,r6 adde r8,r8,r0 ; add cy_limb mulhwu r0,r7,r6 lwz r7,4(r3) adde r9,r9,r0 mulhwu r0,r12,r6 lwz r12,8(r3) adde r10,r10,r0 mulhwu r0,r30,r6 lwz r30,12(r3) adde r11,r11,r0 mulhwu r0,r31,r6 lwz r31,16(r3) addze r0,r0 ; new cy_limb addc r8,r8,r7 stw r8,4(r3) adde r9,r9,r12 stw r9,8(r3) adde r10,r10,r30 stw r10,12(r3) adde r11,r11,r31 stwu r11,16(r3) bdnz .LloopU andi. r31,r5,3 mtctr r31 beq cr0,.Lendx .LloopE: lwzu r7,4(r4) mullw r8,r7,r6 adde r8,r8,r0 ; add cy_limb mulhwu r0,r7,r6 lwz r7,4(r3) addze r0,r0 ; new cy_limb addc r8,r8,r7 stwu r8,4(r3) bdnz .LloopE .Lendx: addze r3,r0 lmw r30,-32(r1) blr csect .__gmpn_addmul_1[pr] \ No newline at end of file
diff --git a/macos/Asm/dummy b/macos/Asm/dummy
deleted file mode 100644
index d00491fd7..000000000
--- a/macos/Asm/dummy
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/macos/Asm/lshift.s b/macos/Asm/lshift.s
deleted file mode 100644
index beb5bcf89..000000000
--- a/macos/Asm/lshift.s
+++ /dev/null
@@ -1 +0,0 @@
-; PowerPC-32 mpn_lshift -- Shift a number left. ; Copyright (C) 1995, 1998, 2000 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 Library General Public License as published by ; the Free Software Foundation; either version 2 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 Library General Public ; License for more details. ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to ; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, ; MA 02111-1307, USA. ; INPUT PARAMETERS ; res_ptr r3 ; s1_ptr r4 ; size r5 ; cnt r6 toc EXPORT __gmpn_lshift[DS] EXPORT .__gmpn_lshift[PR] TC __gmpn_lshift[TC], __gmpn_lshift[DS] CSECT __gmpn_lshift[DS] DC.L .__gmpn_lshift[PR] DC.L TOC[tc0] CSECT .__gmpn_lshift[PR] FUNCTION .__gmpn_lshift[PR] cmpi cr0,r5,12 ; more than 12 limbs? slwi r0,r5,2 add r4,r4,r0 ; make r4 point at end of s1 add r7,r3,r0 ; make r7 point at end of res bgt .LBIG ; branch if more than 12 limbs mtctr r5 ; copy size into CTR subfic r8,r6,32 lwzu r11,-4(r4) ; load first s1 limb srw r3,r11,r8 ; compute function return value bdz .Lend1 .Loop: lwzu r10,-4(r4) slw r9,r11,r6 srw r12,r10,r8 or r9,r9,r12 stwu r9,-4(r7) bdz .Lend2 lwzu r11,-4(r4) slw r9,r10,r6 srw r12,r11,r8 or r9,r9,r12 stwu r9,-4(r7) bdnz .Loop .Lend1: slw r0,r11,r6 stw r0,-4(r7) blr .Lend2: slw r0,r10,r6 stw r0,-4(r7) blr .LBIG: stmw r24,-32(r1) ; save registers we are supposed to preserve lwzu r9,-4(r4) subfic r8,r6,32 srw r3,r9,r8 ; compute function return value slw r0,r9,r6 addi r5,r5,-1 andi. r10,r5,3 ; count for spill loop beq .Le mtctr r10 lwzu r28,-4(r4) bdz .Lxe0 .Loop0: slw r12,r28,r6 srw r24,r28,r8 lwzu r28,-4(r4) or r24,r0,r24 stwu r24,-4(r7) mr r0,r12 bdnz .Loop0 ; taken at most once! .Lxe0: slw r12,r28,r6 srw r24,r28,r8 or r24,r0,r24 stwu r24,-4(r7) mr r0,r12 .Le: srwi r5,r5,2 ; count for unrolled loop addi r5,r5,-1 mtctr r5 lwz r28,-4(r4) lwz r29,-8(r4) lwz r30,-12(r4) lwzu r31,-16(r4) .LoopU: slw r9,r28,r6 srw r24,r28,r8 lwz r28,-4(r4) slw r10,r29,r6 srw r25,r29,r8 lwz r29,-8(r4) slw r11,r30,r6 srw r26,r30,r8 lwz r30,-12(r4) slw r12,r31,r6 srw r27,r31,r8 lwzu r31,-16(r4) or r24,r0,r24 stw r24,-4(r7) or r25,r9,r25 stw r25,-8(r7) or r26,r10,r26 stw r26,-12(r7) or r27,r11,r27 stwu r27,-16(r7) mr r0,r12 bdnz .LoopU slw r9,r28,r6 srw r24,r28,r8 slw r10,r29,r6 srw r25,r29,r8 slw r11,r30,r6 srw r26,r30,r8 slw r12,r31,r6 srw r27,r31,r8 or r24,r0,r24 stw r24,-4(r7) or r25,r9,r25 stw r25,-8(r7) or r26,r10,r26 stw r26,-12(r7) or r27,r11,r27 stwu r27,-16(r7) mr r0,r12 stw r0,-4(r7) lmw r24,-32(r1) ; restore registers blr csect .__gmpn_lshift[pr] \ No newline at end of file
diff --git a/macos/Asm/mul_1.s b/macos/Asm/mul_1.s
deleted file mode 100644
index 6ceed6f99..000000000
--- a/macos/Asm/mul_1.s
+++ /dev/null
@@ -1 +0,0 @@
-; PowerPC-32 mpn_mul_1 -- Multiply a limb vector with a limb and store ; the result in a second limb vector. ; Copyright (C) 1995, 1997, 2000 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 Library General Public License as published by ; the Free Software Foundation; either version 2 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 Library General Public ; License for more details. ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to ; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, ; MA 02111-1307, USA. ; INPUT PARAMETERS ; res_ptr r3 ; s1_ptr r4 ; size r5 ; s2_limb r6 ; This is optimized for the PPC604 but it runs decently even on PPC601. It ; has not been tested on a PPC603 since I don't have access to any such ; machines. toc EXPORT __gmpn_mul_1[DS] EXPORT .__gmpn_mul_1[PR] TC __gmpn_mul_1[TC], __gmpn_mul_1[DS] CSECT __gmpn_mul_1[DS] DC.L .__gmpn_mul_1[PR] DC.L TOC[tc0] CSECT .__gmpn_mul_1[PR] FUNCTION .__gmpn_mul_1[PR] mtctr r5 addi r3,r3,-4 ; adjust res_ptr, it's offset before it's used li r12,0 ; clear upper product reg addic r0,r0,0 ; clear cy ; Start software pipeline lwz r8,0(r4) bdz .Lend3 stmw r30,-8(r1) ; save registers we are supposed to preserve lwzu r9,4(r4) mullw r11,r8,r6 mulhwu r0,r8,r6 bdz .Lend1 ; Software pipelined main loop .Loop: lwz r8,4(r4) mullw r10,r9,r6 adde r30,r11,r12 mulhwu r12,r9,r6 stw r30,4(r3) bdz .Lend2 lwzu r9,8(r4) mullw r11,r8,r6 adde r31,r10,r0 mulhwu r0,r8,r6 stwu r31,8(r3) bdnz .Loop ; Finish software pipeline .Lend1: mullw r10,r9,r6 adde r30,r11,r12 mulhwu r12,r9,r6 stw r30,4(r3) adde r31,r10,r0 stwu r31,8(r3) addze r3,r12 lmw r30,-8(r1) ; restore registers from stack blr .Lend2: mullw r11,r8,r6 adde r31,r10,r0 mulhwu r0,r8,r6 stwu r31,8(r3) adde r30,r11,r12 stw r30,4(r3) addze r3,r0 lmw r30,-8(r1) ; restore registers from stack blr .Lend3: mullw r11,r8,r6 stw r11,4(r3) mulhwu r3,r8,r6 blr csect .__gmpn_mul_1[pr] \ No newline at end of file
diff --git a/macos/Asm/rshift.s b/macos/Asm/rshift.s
deleted file mode 100644
index 274854b09..000000000
--- a/macos/Asm/rshift.s
+++ /dev/null
@@ -1 +0,0 @@
-; PowerPC-32 mpn_rshift -- Shift a number right. ; Copyright (C) 1995, 2000 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 Library General Public License as published by ; the Free Software Foundation; either version 2 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 Library General Public ; License for more details. ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to ; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, ; MA 02111-1307, USA. ; INPUT PARAMETERS ; res_ptr r3 ; s1_ptr r4 ; size r5 ; cnt r6 toc EXPORT __gmpn_rshift[DS] EXPORT .__gmpn_rshift[PR] TC __gmpn_rshift[TC], __gmpn_rshift[DS] CSECT __gmpn_rshift[DS] DC.L .__gmpn_rshift[PR] DC.L TOC[tc0] CSECT .__gmpn_rshift[PR] FUNCTION .__gmpn_rshift[PR] mtctr r5 ; copy size into CTR addi r7,r3,-4 ; move adjusted res_ptr to free return reg subfic r8,r6,32 lwz r11,0(r4) ; load first s1 limb slw r3,r11,r8 ; compute function return value bdz .Lend1 .Loop: lwzu r10,4(r4) srw r9,r11,r6 slw r12,r10,r8 or r9,r9,r12 stwu r9,4(r7) bdz .Lend2 lwzu r11,4(r4) srw r9,r10,r6 slw r12,r11,r8 or r9,r9,r12 stwu r9,4(r7) bdnz .Loop .Lend1: srw r0,r11,r6 stw r0,4(r7) blr .Lend2: srw r0,r10,r6 stw r0,4(r7) blr csect .__gmpn_rshift[pr] \ No newline at end of file
diff --git a/macos/Asm/sub_n.s b/macos/Asm/sub_n.s
deleted file mode 100644
index b999138a8..000000000
--- a/macos/Asm/sub_n.s
+++ /dev/null
@@ -1 +0,0 @@
-; PowerPC-32 mpn_sub_n -- Subtract two limb vectors of the same length > 0 ; and store difference in a third limb vector. ; Copyright (C) 1995, 1997, 2000 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 Library General Public License as published by ; the Free Software Foundation; either version 2 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 Library General Public ; License for more details. ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to ; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, ; MA 02111-1307, USA. ; INPUT PARAMETERS ; res_ptr r3 ; s1_ptr r4 ; s2_ptr r5 ; size r6 toc EXPORT __gmpn_sub_n[DS] EXPORT .__gmpn_sub_n[PR] TC __gmpn_sub_n[TC], __gmpn_sub_n[DS] CSECT __gmpn_sub_n[DS] DC.L .__gmpn_sub_n[PR] DC.L TOC[tc0] CSECT .__gmpn_sub_n[PR] FUNCTION .__gmpn_sub_n[PR] mtctr r6 ; copy size into CTR addic r0,r6,-1 ; set cy lwz r8,0(r4) ; load least significant s1 limb lwz r0,0(r5) ; load least significant s2 limb addi r3,r3,-4 ; offset res_ptr, it's updated before it's used bdz .Lend ; If done, skip loop .Loop: lwz r9,4(r4) ; load s1 limb lwz r10,4(r5) ; load s2 limb subfe r7,r0,r8 ; subtract limbs with cy, set cy stw r7,4(r3) ; store result limb bdz .Lexit ; decrement CTR and exit if done lwzu r8,8(r4) ; load s1 limb and update s1_ptr lwzu r0,8(r5) ; load s2 limb and update s2_ptr subfe r7,r10,r9 ; subtract limbs with cy, set cy stwu r7,8(r3) ; store result limb and update res_ptr bdnz .Loop ; decrement CTR and loop back .Lend: subfe r7,r0,r8 stw r7,4(r3) ; store ultimate result limb subfe r3,r0,r0 ; load !cy into ... subfic r3,r3,0 ; ... return value register blr .Lexit: subfe r7,r10,r9 stw r7,8(r3) subfe r3,r0,r0 ; load !cy into ... subfic r3,r3,0 ; ... return value register blr csect .__gmpn_sub_n[pr] \ No newline at end of file
diff --git a/macos/Asm/submul_1.s b/macos/Asm/submul_1.s
deleted file mode 100644
index 2e9a2dac3..000000000
--- a/macos/Asm/submul_1.s
+++ /dev/null
@@ -1 +0,0 @@
-; PowerPC-32 mpn_submul_1 -- Multiply a limb vector with a limb and subtract ; the result from a second limb vector. ; Copyright (C) 1995, 1997, 1998, 2000 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 Library General Public License as published by ; the Free Software Foundation; either version 2 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 Library General Public ; License for more details. ; You should have received a copy of the GNU Library General Public License ; along with the GNU MP Library; see the file COPYING.LIB. If not, write to ; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, ; MA 02111-1307, USA. ; INPUT PARAMETERS ; res_ptr r3 ; s1_ptr r4 ; size r5 ; s2_limb r6 ; This is optimized for the PPC604. It has not been tested on PPC601, PPC603 ; or PPC750 since I don't have access to any such machines. toc EXPORT __gmpn_submul_1[DS] EXPORT .__gmpn_submul_1[PR] TC __gmpn_submul_1[TC], __gmpn_submul_1[DS] CSECT __gmpn_submul_1[DS] DC.L .__gmpn_submul_1[PR] DC.L TOC[tc0] CSECT .__gmpn_submul_1[PR] FUNCTION .__gmpn_submul_1[PR] cmpi cr0,r5,9 ; more than 9 limbs? bgt cr0,.Lbig ; branch if more than 9 limbs mtctr r5 lwz r0,0(r4) mullw r7,r0,r6 mulhwu r10,r0,r6 lwz r9,0(r3) subfc r8,r7,r9 addc r7,r7,r8 ; invert cy (r7 is junk) addi r3,r3,-4 bdz .Lend .Lloop: lwzu r0,4(r4) stwu r8,4(r3) mullw r8,r0,r6 adde r7,r8,r10 mulhwu r10,r0,r6 lwz r9,4(r3) addze r10,r10 subfc r8,r7,r9 addc r7,r7,r8 ; invert cy (r7 is junk) bdnz .Lloop .Lend: stw r8,4(r3) addze r3,r10 blr .Lbig: stmw r30,-32(r1) addi r5,r5,-1 srwi r0,r5,2 mtctr r0 lwz r7,0(r4) mullw r8,r7,r6 mulhwu r0,r7,r6 lwz r7,0(r3) subfc r7,r8,r7 addc r8,r8,r7 stw r7,0(r3) .LloopU: lwz r7,4(r4) lwz r12,8(r4) lwz r30,12(r4) lwzu r31,16(r4) mullw r8,r7,r6 mullw r9,r12,r6 mullw r10,r30,r6 mullw r11,r31,r6 adde r8,r8,r0 ; add cy_limb mulhwu r0,r7,r6 lwz r7,4(r3) adde r9,r9,r0 mulhwu r0,r12,r6 lwz r12,8(r3) adde r10,r10,r0 mulhwu r0,r30,r6 lwz r30,12(r3) adde r11,r11,r0 mulhwu r0,r31,r6 lwz r31,16(r3) addze r0,r0 ; new cy_limb subfc r7,r8,r7 stw r7,4(r3) subfe r12,r9,r12 stw r12,8(r3) subfe r30,r10,r30 stw r30,12(r3) subfe r31,r11,r31 stwu r31,16(r3) subfe r11,r11,r11 ; invert ... addic r11,r11,1 ; ... carry bdnz .LloopU andi. r31,r5,3 mtctr r31 beq cr0,.Lendx .LloopE: lwzu r7,4(r4) mullw r8,r7,r6 adde r8,r8,r0 ; add cy_limb mulhwu r0,r7,r6 lwz r7,4(r3) addze r0,r0 ; new cy_limb subfc r7,r8,r7 addc r8,r8,r7 stwu r7,4(r3) bdnz .LloopE .Lendx: addze r3,r0 lmw r30,-32(r1) blr csect .__gmpn_submul_1[pr] \ No newline at end of file
diff --git a/macos/AsmObj/dummy b/macos/AsmObj/dummy
deleted file mode 100644
index d00491fd7..000000000
--- a/macos/AsmObj/dummy
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/macos/CmnObj/dummy b/macos/CmnObj/dummy
deleted file mode 100644
index d00491fd7..000000000
--- a/macos/CmnObj/dummy
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/macos/Makefile b/macos/Makefile
deleted file mode 100644
index 5c66b02ac..000000000
--- a/macos/Makefile
+++ /dev/null
@@ -1 +0,0 @@
-# Copyright (C) 2000 Free Software Foundation, Inc. # This makefile.mpw is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. VERSION = 3.1 C = MrC COptions = -ansi on -i : -i :: -i ::mpn:powerpc32 -i ::mpz ¶ -opt speed -inline on -d random=rand -d srandom=srand Link = PPCLink LinkOptions = -sym on -xm library ToolOptions = -t 'MPST' -c 'MPS' Asm = PPCAsm AOptions = -sym on Lib = "libgmp.{VERSION}" # These are only needed for creating test programs as MPW tools SysLibs = "{SharedLibraries}"StdCLib ¶ "{SharedLibraries}"InterfaceLib ¶ "{SharedLibraries}"MathLib ¶ "{PPCLibraries}"StdCRuntime.o ¶ "{PPCLibraries}"PPCCRuntime.o # Where to put object code. The reason we don't put them into # the same directory is that some objectfiles have the same # name. MpfObjDir = :MpfObj: MpnObjDir = :MpnObj: MpqObjDir = :MpqObj: MpzObjDir = :MpzObj: CmnObjDir = :CmnObj: AsmObjDir = :AsmObj: AsmSrcDir = :Asm: MpfBinDir = :MpfBin: MpqBinDir = :MpqBin: MpzBinDir = :MpzBin: ObjDirs = {MpfObjDir} {MpnObjDir} {MpqObjDir} {MpzObjDir} ¶ {CmnObjDir} {AsmObjDir} {AsmSrcDir} ¶ {MpfBinDir} {MpqBinDir} {MpzBinDir} ########################################################################### AsmObjs = {AsmObjDir}add_n.o ¶ {AsmObjDir}addmul_1.o ¶ {AsmObjDir}lshift.o ¶ {AsmObjDir}mul_1.o ¶ {AsmObjDir}rshift.o ¶ {AsmObjDir}sub_n.o ¶ {AsmObjDir}submul_1.o AsmSrc = {AsmSrcDir}add_n.s ¶ {AsmSrcDir}addmul_1.s ¶ {AsmSrcDir}lshift.s ¶ {AsmSrcDir}mul_1.s ¶ {AsmSrcDir}rshift.s ¶ {AsmSrcDir}sub_n.s ¶ {AsmSrcDir}submul_1.s MpnObjs = {MpnObjDir}mp_bases.o ¶ {MpnObjDir}bdivmod.o {MpnObjDir}bz_divrem_n.o {MpnObjDir}cmp.o ¶ {MpnObjDir}diveby3.o {MpnObjDir}divrem.o {MpnObjDir}divrem_1.o ¶ {MpnObjDir}divrem_2.o {MpnObjDir}dump.o {MpnObjDir}gcd.o ¶ {MpnObjDir}gcd_1.o {MpnObjDir}gcdext.o {MpnObjDir}get_str.o ¶ {MpnObjDir}hamdist.o {MpnObjDir}inlines.o {MpnObjDir}jacbase.o ¶ {MpnObjDir}mod_1.o {MpnObjDir}mod_1_rs.o {MpnObjDir}mul.o ¶ {MpnObjDir}mul_basecase.o {MpnObjDir}mul_n.o {MpnObjDir}perfsqr.o ¶ {MpnObjDir}popcount.o {MpnObjDir}pre_mod_1.o {MpnObjDir}random.o ¶ {MpnObjDir}random2.o {MpnObjDir}sb_divrem_mn.o {MpnObjDir}scan0.o ¶ {MpnObjDir}scan1.o {MpnObjDir}set_str.o {MpnObjDir}sqr_basecase.o ¶ {MpnObjDir}sqrtrem.o ¶ {MpnObjDir}tdiv_qr.o MpfObjs = ¶ {MpfObjDir}init.o {MpfObjDir}init2.o {MpfObjDir}set.o ¶ {MpfObjDir}set_ui.o {MpfObjDir}set_si.o {MpfObjDir}set_str.o ¶ {MpfObjDir}set_d.o {MpfObjDir}set_z.o {MpfObjDir}set_q.o ¶ {MpfObjDir}iset.o {MpfObjDir}iset_ui.o {MpfObjDir}iset_si.o ¶ {MpfObjDir}iset_str.o {MpfObjDir}iset_d.o {MpfObjDir}clear.o ¶ {MpfObjDir}get_str.o {MpfObjDir}dump.o {MpfObjDir}size.o ¶ {MpfObjDir}eq.o {MpfObjDir}reldiff.o {MpfObjDir}sqrt.o ¶ {MpfObjDir}random2.o {MpfObjDir}inp_str.o {MpfObjDir}out_str.o ¶ {MpfObjDir}add.o {MpfObjDir}add_ui.o {MpfObjDir}sub.o ¶ {MpfObjDir}sub_ui.o {MpfObjDir}ui_sub.o {MpfObjDir}mul.o ¶ {MpfObjDir}mul_ui.o {MpfObjDir}div.o {MpfObjDir}div_ui.o ¶ {MpfObjDir}cmp.o {MpfObjDir}cmp_ui.o {MpfObjDir}cmp_si.o ¶ {MpfObjDir}mul_2exp.o {MpfObjDir}div_2exp.o {MpfObjDir}abs.o ¶ {MpfObjDir}neg.o {MpfObjDir}get_d.o {MpfObjDir}set_dfl_prec.o ¶ {MpfObjDir}set_prc.o {MpfObjDir}set_prc_raw.o {MpfObjDir}get_prc.o ¶ {MpfObjDir}ui_div.o {MpfObjDir}sqrt_ui.o {MpfObjDir}pow_ui.o ¶ {MpfObjDir}urandomb.o {MpfObjDir}swap.o {MpfObjDir}floor.o ¶ {MpfObjDir}ceil.o ¶ {MpfObjDir}trunc.o MpqObjs = ¶ {MpqObjDir}add.o {MpqObjDir}canonicalize.o {MpqObjDir}clear.o ¶ {MpqObjDir}cmp.o {MpqObjDir}cmp_ui.o {MpqObjDir}div.o ¶ {MpqObjDir}get_d.o {MpqObjDir}get_den.o {MpqObjDir}get_num.o ¶ {MpqObjDir}init.o {MpqObjDir}inv.o {MpqObjDir}mul.o ¶ {MpqObjDir}neg.o {MpqObjDir}out_str.o {MpqObjDir}set.o ¶ {MpqObjDir}set_den.o {MpqObjDir}set_num.o {MpqObjDir}set_si.o ¶ {MpqObjDir}set_ui.o {MpqObjDir}sub.o {MpqObjDir}equal.o ¶ {MpqObjDir}set_z.o {MpqObjDir}set_d.o ¶ {MpqObjDir}swap.o MpzObjs = ¶ {MpzObjDir}abs.o {MpzObjDir}add.o {MpzObjDir}add_ui.o ¶ {MpzObjDir}addmul_ui.o {MpzObjDir}and.o {MpzObjDir}array_init.o ¶ {MpzObjDir}bin_ui.o {MpzObjDir}bin_uiui.o {MpzObjDir}cdiv_q.o ¶ {MpzObjDir}cdiv_q_ui.o {MpzObjDir}cdiv_qr.o ¶ {MpzObjDir}cdiv_qr_ui.o {MpzObjDir}cdiv_r.o {MpzObjDir}cdiv_r_ui.o ¶ {MpzObjDir}cdiv_ui.o {MpzObjDir}clear.o {MpzObjDir}clrbit.o ¶ {MpzObjDir}cmp.o {MpzObjDir}cmp_si.o {MpzObjDir}cmp_ui.o ¶ {MpzObjDir}cmpabs.o {MpzObjDir}cmpabs_ui.o {MpzObjDir}com.o ¶ {MpzObjDir}divexact.o {MpzObjDir}dump.o {MpzObjDir}fac_ui.o ¶ {MpzObjDir}fdiv_q.o {MpzObjDir}fdiv_q_2exp.o ¶ {MpzObjDir}fdiv_q_ui.o {MpzObjDir}fdiv_qr.o ¶ {MpzObjDir}fdiv_qr_ui.o {MpzObjDir}fdiv_r.o ¶ {MpzObjDir}fdiv_r_2exp.o {MpzObjDir}fdiv_r_ui.o ¶ {MpzObjDir}fdiv_ui.o {MpzObjDir}fib_ui.o {MpzObjDir}fits_sint_p.o ¶ {MpzObjDir}fits_slong_p.o {MpzObjDir}fits_sshort_p.o ¶ {MpzObjDir}fits_uint_p.o {MpzObjDir}fits_ulong_p.o ¶ {MpzObjDir}fits_ushort_p.o {MpzObjDir}gcd.o {MpzObjDir}gcd_ui.o ¶ {MpzObjDir}gcdext.o {MpzObjDir}get_d.o {MpzObjDir}get_si.o ¶ {MpzObjDir}get_str.o {MpzObjDir}get_ui.o {MpzObjDir}getlimbn.o ¶ {MpzObjDir}hamdist.o {MpzObjDir}init.o {MpzObjDir}inp_raw.o ¶ {MpzObjDir}inp_str.o {MpzObjDir}invert.o {MpzObjDir}ior.o ¶ {MpzObjDir}iset.o {MpzObjDir}iset_d.o {MpzObjDir}iset_si.o ¶ {MpzObjDir}iset_str.o {MpzObjDir}iset_ui.o {MpzObjDir}jacobi.o ¶ {MpzObjDir}kronsz.o {MpzObjDir}kronuz.o {MpzObjDir}kronzs.o ¶ {MpzObjDir}kronzu.o {MpzObjDir}lcm.o {MpzObjDir}legendre.o ¶ {MpzObjDir}mod.o {MpzObjDir}mul.o {MpzObjDir}mul_2exp.o ¶ {MpzObjDir}neg.o {MpzObjDir}nextprime.o {MpzObjDir}out_raw.o ¶ {MpzObjDir}out_str.o {MpzObjDir}perfpow.o {MpzObjDir}perfsqr.o ¶ {MpzObjDir}popcount.o {MpzObjDir}pow_ui.o {MpzObjDir}powm.o ¶ {MpzObjDir}powm_ui.o {MpzObjDir}pprime_p.o {MpzObjDir}random.o ¶ {MpzObjDir}random2.o {MpzObjDir}realloc.o {MpzObjDir}remove.o ¶ {MpzObjDir}root.o {MpzObjDir}rrandomb.o {MpzObjDir}scan0.o ¶ {MpzObjDir}scan1.o {MpzObjDir}set.o {MpzObjDir}set_d.o ¶ {MpzObjDir}set_f.o {MpzObjDir}set_q.o {MpzObjDir}set_si.o ¶ {MpzObjDir}set_str.o {MpzObjDir}set_ui.o {MpzObjDir}setbit.o ¶ {MpzObjDir}size.o {MpzObjDir}sizeinbase.o {MpzObjDir}sqrt.o ¶ {MpzObjDir}sqrtrem.o {MpzObjDir}sub.o {MpzObjDir}sub_ui.o ¶ {MpzObjDir}swap.o {MpzObjDir}tdiv_ui.o {MpzObjDir}tdiv_q.o ¶ {MpzObjDir}tdiv_q_2exp.o {MpzObjDir}tdiv_q_ui.o ¶ {MpzObjDir}tdiv_qr.o {MpzObjDir}tdiv_qr_ui.o {MpzObjDir}tdiv_r.o ¶ {MpzObjDir}tdiv_r_2exp.o {MpzObjDir}tdiv_r_ui.o ¶ {MpzObjDir}tstbit.o {MpzObjDir}ui_pow_ui.o {MpzObjDir}urandomb.o ¶ {MpzObjDir}urandomm.o {MpzObjDir}xor.o {MpzObjDir}mul_si.o ¶ {MpzObjDir}mul_ui.o CmnObjs = ¶ {CmnObjDir}assert.o {CmnObjDir}compat.o {CmnObjDir}errno.o ¶ {CmnObjDir}memory.o {CmnObjDir}mp_set_fns.o ¶ {CmnObjDir}mp_clz_tab.o {CmnObjDir}mp_minv_tab.o {CmnObjDir}rand.o ¶ {CmnObjDir}randclr.o {CmnObjDir}randlc.o {CmnObjDir}randlc2x.o ¶ {CmnObjDir}randraw.o {CmnObjDir}randsd.o {CmnObjDir}randsdui.o ¶ {CmnObjDir}version.o {CmnObjDir}stack-alloc.o {CmnObjDir}mp_bpl.o ¶ {CmnObjDir}extract-dbl.o ¶ {CmnObjDir}insert-dbl.o Objs = {AsmObjs} {MpfObjs} {MpnObjs} {MpqObjs} {MpzObjs} {CmnObjs} ########################################################################### all Ä {Lib} {Lib} Ä {Objs} Makefile {Link} {LinkOptions} -o {Lib} {Objs} ########################################################################### # Special rules, got them from "mp[fqz]/Makefile.am" {MpzObjDir}mul_si.o Ä ::mpz:mul_siui.c Makefile {C} ::mpz:mul_siui.c -o {Targ} {COptions} -d OPERATION_mul_si {MpzObjDir}mul_ui.o Ä ::mpz:mul_siui.c Makefile {C} ::mpz:mul_siui.c -o {Targ} {COptions} -d OPERATION_mul_ui {MpfObjDir}floor.o Ä ::mpf:integer.c Makefile {C} ::mpf:integer.c -o {Targ} {COptions} -d OPERATION_floor {MpfObjDir}ceil.o Ä ::mpf:integer.c Makefile {C} ::mpf:integer.c -o {Targ} {COptions} -d OPERATION_ceil {MpfObjDir}trunc.o Ä ::mpf:integer.c Makefile {C} ::mpf:integer.c -o {Targ} {COptions} -d OPERATION_trunc ########################################################################### # Default rules/ directory rules {MpfObjDir} Ä ::mpf: {MpnObjDir} Ä ::mpn: ::mpn:generic: {MpqObjDir} Ä ::mpq: {MpzObjDir} Ä ::mpz: {CmnObjDir} Ä :: {AsmObjDir} Ä :Asm: {MpzBinDir} Ä ::mpz:tests: {MpqBinDir} Ä ::mpq:tests: {MpfBinDir} Ä ::mpf:tests: .o Ä .c Makefile {C} {DepDir}{default}.c -o {TargDir}{default}.o {COptions} .o Ä .s Makefile {Asm} {DepDir}{default}.s -o {TargDir}{default}.o {AOptions} clean Ä Delete -c -i ::mpz:tests:Å.o Delete -c -i ::mpq:tests:Å.o Delete -c -i ::mpf:tests:Å.o Delete -c -i :Å:Å.o Delete -c -i :Å:Å.s Delete -c -i Å~ distclean Ä clean Delete -c -i {Lib} Delete -c -i Å~ Delete -c -i Å.bak maintainer_clean Ä distclean Delete -c -i config.h Delete -c -i configure.mac Delete -c -i Makefile Delete -c -i Makefile.cw ########################################################################### # Test application FIXME: Not ready TestApp = test TestObj = test.o {TestApp} Ä {TestObj} {Link} -o {TestApp} {TestObj} {Lib} {SysLibs} ########################################################################### # FIXME: This does't work very well..... # FIXME: Find dependency somehow. With the Unix mkdep like # mkdep -I. -Imacos -Impn -Impn/powerpc32 -Impz \ # `find . -name "*.c" | grep -v Apple | grep -v tests | grep -v macos` # or some MPW tool. .exe Ä .o {Link} {ToolOptions} -o {TargDir}{default}.exe {DepDir}{default}.o ¶ {Lib} {SysLibs} check Ä check-mpz check-mpq check-mpf check-mpz Ä z-mul z-tdiv z-tdiv_ui z-fdiv z-fdiv_ui ¶ z-gcd z-dive z-sqrtrem z-convert z-logic z-bit ¶ z-powm z-powm_ui z-pow_ui z-2exp z-reuse z-root ¶ z-jac z-bin z-misc # FIXME: Left out z-io, can't compile it. z-mul Ä {MpzBinDir}t-mul.exe {MpzBinDir}t-mul.exe z-tdiv Ä {MpzBinDir}t-tdiv.exe {MpzBinDir}t-tdiv.exe z-tdiv_ui Ä {MpzBinDir}t-tdiv_ui.exe {MpzBinDir}t-tdiv_ui.exe z-fdiv Ä {MpzBinDir}t-fdiv.exe {MpzBinDir}t-fdiv.exe z-fdiv_ui Ä {MpzBinDir}t-fdiv_ui.exe {MpzBinDir}t-fdiv_ui.exe z-gcd Ä {MpzBinDir}t-gcd.exe {MpzBinDir}t-gcd.exe z-dive Ä {MpzBinDir}dive.exe {MpzBinDir}dive.exe z-sqrtrem Ä {MpzBinDir}t-sqrtrem.exe {MpzBinDir}t-sqrtrem.exe z-convert Ä {MpzBinDir}convert.exe {MpzBinDir}convert.exe z-io Ä {MpzBinDir}io.exe {MpzBinDir}io.exe z-logic Ä {MpzBinDir}logic.exe {MpzBinDir}logic.exe z-bit Ä {MpzBinDir}bit.exe {MpzBinDir}bit.exe z-powm Ä {MpzBinDir}t-powm.exe {MpzBinDir}t-powm.exe z-powm_ui Ä {MpzBinDir}t-powm_ui.exe {MpzBinDir}t-powm_ui.exe z-pow_ui Ä {MpzBinDir}t-pow_ui.exe {MpzBinDir}t-pow_ui.exe z-2exp Ä {MpzBinDir}t-2exp.exe {MpzBinDir}t-2exp.exe z-reuse Ä {MpzBinDir}reuse.exe {MpzBinDir}reuse.exe z-root Ä {MpzBinDir}t-root.exe {MpzBinDir}t-root.exe z-jac Ä {MpzBinDir}t-jac.exe {MpzBinDir}t-jac.exe z-bin Ä {MpzBinDir}t-bin.exe {MpzBinDir}t-bin.exe z-misc Ä {MpzBinDir}t-misc.exe {MpzBinDir}t-misc.exe check-mpq Ä q-cmp q-cmp_ui q-get_d q-cmp Ä {MpqBinDir}t-cmp.exe {MpqBinDir}t-cmp.exe q-cmp_ui Ä {MpqBinDir}t-cmp_ui.exe {MpqBinDir}t-cmp_ui.exe q-get_d Ä {MpqBinDir}t-get_d.exe {MpqBinDir}t-get_d.exe check-mpf Ä f-add f-sub f-conv f-sqrt f-muldiv f-dm2exp f-reuse ¶ f-get_d f-misc {MpfBinDir}t-add.exe Ä ::mpf:tests:t-add.o ::mpf:tests:ref.o {Link} {ToolOptions} -o {Targ} {Deps} {Lib} {SysLibs} {MpfBinDir}t-sub.exe Ä ::mpf:tests:t-sub.o ::mpf:tests:ref.o {Link} {ToolOptions} -o {Targ} {Deps} {Lib} {SysLibs} f-add Ä {MpfBinDir}t-add.exe {MpfBinDir}t-add.exe f-sub Ä {MpfBinDir}t-sub.exe {MpfBinDir}t-sub.exe f-conv Ä {MpfBinDir}t-conv.exe {MpfBinDir}t-conv.exe f-sqrt Ä {MpfBinDir}t-sqrt.exe {MpfBinDir}t-sqrt.exe f-muldiv Ä {MpfBinDir}t-muldiv.exe {MpfBinDir}t-muldiv.exe f-dm2exp Ä {MpfBinDir}t-dm2exp.exe {MpfBinDir}t-dm2exp.exe f-reuse Ä {MpfBinDir}reuse.exe {MpfBinDir}reuse.exe f-get_d Ä {MpfBinDir}t-get_d.exe {MpfBinDir}t-get_d.exe f-misc Ä {MpfBinDir}t-misc.exe {MpfBinDir}t-misc.exe \ No newline at end of file
diff --git a/macos/Makefile.cw b/macos/Makefile.cw
deleted file mode 100644
index 64dd9e675..000000000
--- a/macos/Makefile.cw
+++ /dev/null
@@ -1 +0,0 @@
-# Copyright (C) 2000 Free Software Foundation, Inc. # This makefile.mpw is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. VERSION = 3.1 C = MWCPPC COptions = -opt all -w nounusedvar,noextended ¶ -i :: -i ::mpn:powerpc32 -i ::mpz ¶ -sym full -d random=rand -d srandom=srand Link = MWLinkPPC LinkOptions = -sym fullpath -library ToolOptions = -mpwtool Asm = PPCAsm AOptions = -sym on Lib = "libgmp.{VERSION}" # These are only needed for creating test programs as MPW tools SysLibs = "{SharedLibraries}"InterfaceLib ¶ "{MWPPCLibraries}MSL MPWCRuntime.Lib" ¶ "{MWPPCLibraries}MSL C.PPC MPW(NL).Lib" ¶ "{SharedLibraries}"MathLib # Where to put object code. The reason we don't put them into # the same directory is that some objectfiles have the same # name. MpfObjDir = :MpfObj: MpnObjDir = :MpnObj: MpqObjDir = :MpqObj: MpzObjDir = :MpzObj: CmnObjDir = :CmnObj: AsmObjDir = :AsmObj: AsmSrcDir = :Asm: MpfBinDir = :MpfBin: MpqBinDir = :MpqBin: MpzBinDir = :MpzBin: ObjDirs = {MpfObjDir} {MpnObjDir} {MpqObjDir} {MpzObjDir} ¶ {CmnObjDir} {AsmObjDir} {AsmSrcDir} ¶ {MpfBinDir} {MpqBinDir} {MpzBinDir} ########################################################################### AsmObjs = {AsmObjDir}add_n.o ¶ {AsmObjDir}addmul_1.o ¶ {AsmObjDir}lshift.o ¶ {AsmObjDir}mul_1.o ¶ {AsmObjDir}rshift.o ¶ {AsmObjDir}sub_n.o ¶ {AsmObjDir}submul_1.o AsmSrc = {AsmSrcDir}add_n.s ¶ {AsmSrcDir}addmul_1.s ¶ {AsmSrcDir}lshift.s ¶ {AsmSrcDir}mul_1.s ¶ {AsmSrcDir}rshift.s ¶ {AsmSrcDir}sub_n.s ¶ {AsmSrcDir}submul_1.s MpnObjs = {MpnObjDir}mp_bases.o ¶ {MpnObjDir}bdivmod.o {MpnObjDir}bz_divrem_n.o {MpnObjDir}cmp.o ¶ {MpnObjDir}diveby3.o {MpnObjDir}divrem.o {MpnObjDir}divrem_1.o ¶ {MpnObjDir}divrem_2.o {MpnObjDir}dump.o {MpnObjDir}gcd.o ¶ {MpnObjDir}gcd_1.o {MpnObjDir}gcdext.o {MpnObjDir}get_str.o ¶ {MpnObjDir}hamdist.o {MpnObjDir}inlines.o {MpnObjDir}jacbase.o ¶ {MpnObjDir}mod_1.o {MpnObjDir}mod_1_rs.o {MpnObjDir}mul.o ¶ {MpnObjDir}mul_basecase.o {MpnObjDir}mul_n.o {MpnObjDir}perfsqr.o ¶ {MpnObjDir}popcount.o {MpnObjDir}pre_mod_1.o {MpnObjDir}random.o ¶ {MpnObjDir}random2.o {MpnObjDir}sb_divrem_mn.o {MpnObjDir}scan0.o ¶ {MpnObjDir}scan1.o {MpnObjDir}set_str.o {MpnObjDir}sqr_basecase.o ¶ {MpnObjDir}sqrtrem.o ¶ {MpnObjDir}tdiv_qr.o MpfObjs = ¶ {MpfObjDir}init.o {MpfObjDir}init2.o {MpfObjDir}set.o ¶ {MpfObjDir}set_ui.o {MpfObjDir}set_si.o {MpfObjDir}set_str.o ¶ {MpfObjDir}set_d.o {MpfObjDir}set_z.o {MpfObjDir}set_q.o ¶ {MpfObjDir}iset.o {MpfObjDir}iset_ui.o {MpfObjDir}iset_si.o ¶ {MpfObjDir}iset_str.o {MpfObjDir}iset_d.o {MpfObjDir}clear.o ¶ {MpfObjDir}get_str.o {MpfObjDir}dump.o {MpfObjDir}size.o ¶ {MpfObjDir}eq.o {MpfObjDir}reldiff.o {MpfObjDir}sqrt.o ¶ {MpfObjDir}random2.o {MpfObjDir}inp_str.o {MpfObjDir}out_str.o ¶ {MpfObjDir}add.o {MpfObjDir}add_ui.o {MpfObjDir}sub.o ¶ {MpfObjDir}sub_ui.o {MpfObjDir}ui_sub.o {MpfObjDir}mul.o ¶ {MpfObjDir}mul_ui.o {MpfObjDir}div.o {MpfObjDir}div_ui.o ¶ {MpfObjDir}cmp.o {MpfObjDir}cmp_ui.o {MpfObjDir}cmp_si.o ¶ {MpfObjDir}mul_2exp.o {MpfObjDir}div_2exp.o {MpfObjDir}abs.o ¶ {MpfObjDir}neg.o {MpfObjDir}get_d.o {MpfObjDir}set_dfl_prec.o ¶ {MpfObjDir}set_prc.o {MpfObjDir}set_prc_raw.o {MpfObjDir}get_prc.o ¶ {MpfObjDir}ui_div.o {MpfObjDir}sqrt_ui.o {MpfObjDir}pow_ui.o ¶ {MpfObjDir}urandomb.o {MpfObjDir}swap.o {MpfObjDir}floor.o ¶ {MpfObjDir}ceil.o ¶ {MpfObjDir}trunc.o MpqObjs = ¶ {MpqObjDir}add.o {MpqObjDir}canonicalize.o {MpqObjDir}clear.o ¶ {MpqObjDir}cmp.o {MpqObjDir}cmp_ui.o {MpqObjDir}div.o ¶ {MpqObjDir}get_d.o {MpqObjDir}get_den.o {MpqObjDir}get_num.o ¶ {MpqObjDir}init.o {MpqObjDir}inv.o {MpqObjDir}mul.o ¶ {MpqObjDir}neg.o {MpqObjDir}out_str.o {MpqObjDir}set.o ¶ {MpqObjDir}set_den.o {MpqObjDir}set_num.o {MpqObjDir}set_si.o ¶ {MpqObjDir}set_ui.o {MpqObjDir}sub.o {MpqObjDir}equal.o ¶ {MpqObjDir}set_z.o {MpqObjDir}set_d.o ¶ {MpqObjDir}swap.o MpzObjs = ¶ {MpzObjDir}abs.o {MpzObjDir}add.o {MpzObjDir}add_ui.o ¶ {MpzObjDir}addmul_ui.o {MpzObjDir}and.o {MpzObjDir}array_init.o ¶ {MpzObjDir}bin_ui.o {MpzObjDir}bin_uiui.o {MpzObjDir}cdiv_q.o ¶ {MpzObjDir}cdiv_q_ui.o {MpzObjDir}cdiv_qr.o ¶ {MpzObjDir}cdiv_qr_ui.o {MpzObjDir}cdiv_r.o {MpzObjDir}cdiv_r_ui.o ¶ {MpzObjDir}cdiv_ui.o {MpzObjDir}clear.o {MpzObjDir}clrbit.o ¶ {MpzObjDir}cmp.o {MpzObjDir}cmp_si.o {MpzObjDir}cmp_ui.o ¶ {MpzObjDir}cmpabs.o {MpzObjDir}cmpabs_ui.o {MpzObjDir}com.o ¶ {MpzObjDir}divexact.o {MpzObjDir}dump.o {MpzObjDir}fac_ui.o ¶ {MpzObjDir}fdiv_q.o {MpzObjDir}fdiv_q_2exp.o ¶ {MpzObjDir}fdiv_q_ui.o {MpzObjDir}fdiv_qr.o ¶ {MpzObjDir}fdiv_qr_ui.o {MpzObjDir}fdiv_r.o ¶ {MpzObjDir}fdiv_r_2exp.o {MpzObjDir}fdiv_r_ui.o ¶ {MpzObjDir}fdiv_ui.o {MpzObjDir}fib_ui.o {MpzObjDir}fits_sint_p.o ¶ {MpzObjDir}fits_slong_p.o {MpzObjDir}fits_sshort_p.o ¶ {MpzObjDir}fits_uint_p.o {MpzObjDir}fits_ulong_p.o ¶ {MpzObjDir}fits_ushort_p.o {MpzObjDir}gcd.o {MpzObjDir}gcd_ui.o ¶ {MpzObjDir}gcdext.o {MpzObjDir}get_d.o {MpzObjDir}get_si.o ¶ {MpzObjDir}get_str.o {MpzObjDir}get_ui.o {MpzObjDir}getlimbn.o ¶ {MpzObjDir}hamdist.o {MpzObjDir}init.o {MpzObjDir}inp_raw.o ¶ {MpzObjDir}inp_str.o {MpzObjDir}invert.o {MpzObjDir}ior.o ¶ {MpzObjDir}iset.o {MpzObjDir}iset_d.o {MpzObjDir}iset_si.o ¶ {MpzObjDir}iset_str.o {MpzObjDir}iset_ui.o {MpzObjDir}jacobi.o ¶ {MpzObjDir}kronsz.o {MpzObjDir}kronuz.o {MpzObjDir}kronzs.o ¶ {MpzObjDir}kronzu.o {MpzObjDir}lcm.o {MpzObjDir}legendre.o ¶ {MpzObjDir}mod.o {MpzObjDir}mul.o {MpzObjDir}mul_2exp.o ¶ {MpzObjDir}neg.o {MpzObjDir}nextprime.o {MpzObjDir}out_raw.o ¶ {MpzObjDir}out_str.o {MpzObjDir}perfpow.o {MpzObjDir}perfsqr.o ¶ {MpzObjDir}popcount.o {MpzObjDir}pow_ui.o {MpzObjDir}powm.o ¶ {MpzObjDir}powm_ui.o {MpzObjDir}pprime_p.o {MpzObjDir}random.o ¶ {MpzObjDir}random2.o {MpzObjDir}realloc.o {MpzObjDir}remove.o ¶ {MpzObjDir}root.o {MpzObjDir}rrandomb.o {MpzObjDir}scan0.o ¶ {MpzObjDir}scan1.o {MpzObjDir}set.o {MpzObjDir}set_d.o ¶ {MpzObjDir}set_f.o {MpzObjDir}set_q.o {MpzObjDir}set_si.o ¶ {MpzObjDir}set_str.o {MpzObjDir}set_ui.o {MpzObjDir}setbit.o ¶ {MpzObjDir}size.o {MpzObjDir}sizeinbase.o {MpzObjDir}sqrt.o ¶ {MpzObjDir}sqrtrem.o {MpzObjDir}sub.o {MpzObjDir}sub_ui.o ¶ {MpzObjDir}swap.o {MpzObjDir}tdiv_ui.o {MpzObjDir}tdiv_q.o ¶ {MpzObjDir}tdiv_q_2exp.o {MpzObjDir}tdiv_q_ui.o ¶ {MpzObjDir}tdiv_qr.o {MpzObjDir}tdiv_qr_ui.o {MpzObjDir}tdiv_r.o ¶ {MpzObjDir}tdiv_r_2exp.o {MpzObjDir}tdiv_r_ui.o ¶ {MpzObjDir}tstbit.o {MpzObjDir}ui_pow_ui.o {MpzObjDir}urandomb.o ¶ {MpzObjDir}urandomm.o {MpzObjDir}xor.o {MpzObjDir}mul_si.o ¶ {MpzObjDir}mul_ui.o CmnObjs = ¶ {CmnObjDir}assert.o {CmnObjDir}compat.o {CmnObjDir}errno.o ¶ {CmnObjDir}memory.o {CmnObjDir}mp_set_fns.o ¶ {CmnObjDir}mp_clz_tab.o {CmnObjDir}mp_minv_tab.o {CmnObjDir}rand.o ¶ {CmnObjDir}randclr.o {CmnObjDir}randlc.o {CmnObjDir}randlc2x.o ¶ {CmnObjDir}randraw.o {CmnObjDir}randsd.o {CmnObjDir}randsdui.o ¶ {CmnObjDir}version.o {CmnObjDir}stack-alloc.o {CmnObjDir}mp_bpl.o ¶ {CmnObjDir}extract-dbl.o ¶ {CmnObjDir}insert-dbl.o Objs = {AsmObjs} {MpfObjs} {MpnObjs} {MpqObjs} {MpzObjs} {CmnObjs} ########################################################################### all Ä {Lib} {Lib} Ä {Objs} Makefile {Link} {LinkOptions} -o {Lib} {Objs} ########################################################################### # Special rules, got them from "mp[fqz]/Makefile.am" {MpzObjDir}mul_si.o Ä ::mpz:mul_siui.c Makefile {C} ::mpz:mul_siui.c -o {Targ} {COptions} -d OPERATION_mul_si {MpzObjDir}mul_ui.o Ä ::mpz:mul_siui.c Makefile {C} ::mpz:mul_siui.c -o {Targ} {COptions} -d OPERATION_mul_ui {MpfObjDir}floor.o Ä ::mpf:integer.c Makefile {C} ::mpf:integer.c -o {Targ} {COptions} -d OPERATION_floor {MpfObjDir}ceil.o Ä ::mpf:integer.c Makefile {C} ::mpf:integer.c -o {Targ} {COptions} -d OPERATION_ceil {MpfObjDir}trunc.o Ä ::mpf:integer.c Makefile {C} ::mpf:integer.c -o {Targ} {COptions} -d OPERATION_trunc ########################################################################### # Default rules/ directory rules {MpfObjDir} Ä ::mpf: {MpnObjDir} Ä ::mpn: ::mpn:generic: {MpqObjDir} Ä ::mpq: {MpzObjDir} Ä ::mpz: {CmnObjDir} Ä :: {AsmObjDir} Ä :Asm: {MpzBinDir} Ä ::mpz:tests: {MpqBinDir} Ä ::mpq:tests: {MpfBinDir} Ä ::mpf:tests: .o Ä .c Makefile {C} {DepDir}{default}.c -o {TargDir}{default}.o {COptions} .o Ä .s Makefile {Asm} {DepDir}{default}.s -o {TargDir}{default}.o {AOptions} clean Ä Delete -c -i ::mpz:tests:Å.o Delete -c -i ::mpq:tests:Å.o Delete -c -i ::mpf:tests:Å.o Delete -c -i :Å:Å.o Delete -c -i :Å:Å.s Delete -c -i Å~ distclean Ä clean Delete -c -i {Lib} Delete -c -i Å~ Delete -c -i Å.bak maintainer_clean Ä distclean Delete -c -i config.h Delete -c -i configure.mac Delete -c -i Makefile Delete -c -i Makefile.cw ########################################################################### # Test application FIXME: Not ready TestApp = test TestObj = test.o {TestApp} Ä {TestObj} {Link} -o {TestApp} {TestObj} {Lib} {SysLibs} ########################################################################### # FIXME: This does't work very well..... # FIXME: Find dependency somehow. With the Unix mkdep like # mkdep -I. -Imacos -Impn -Impn/powerpc32 -Impz \ # `find . -name "*.c" | grep -v Apple | grep -v tests | grep -v macos` # or some MPW tool. .exe Ä .o {Link} {ToolOptions} -o {TargDir}{default}.exe {DepDir}{default}.o ¶ {Lib} {SysLibs} check Ä check-mpz check-mpq check-mpf check-mpz Ä z-mul z-tdiv z-tdiv_ui z-fdiv z-fdiv_ui ¶ z-gcd z-dive z-sqrtrem z-convert z-logic z-bit ¶ z-powm z-powm_ui z-pow_ui z-2exp z-reuse z-root ¶ z-jac z-bin z-misc # FIXME: Left out z-io, can't compile it. z-mul Ä {MpzBinDir}t-mul.exe {MpzBinDir}t-mul.exe z-tdiv Ä {MpzBinDir}t-tdiv.exe {MpzBinDir}t-tdiv.exe z-tdiv_ui Ä {MpzBinDir}t-tdiv_ui.exe {MpzBinDir}t-tdiv_ui.exe z-fdiv Ä {MpzBinDir}t-fdiv.exe {MpzBinDir}t-fdiv.exe z-fdiv_ui Ä {MpzBinDir}t-fdiv_ui.exe {MpzBinDir}t-fdiv_ui.exe z-gcd Ä {MpzBinDir}t-gcd.exe {MpzBinDir}t-gcd.exe z-dive Ä {MpzBinDir}dive.exe {MpzBinDir}dive.exe z-sqrtrem Ä {MpzBinDir}t-sqrtrem.exe {MpzBinDir}t-sqrtrem.exe z-convert Ä {MpzBinDir}convert.exe {MpzBinDir}convert.exe z-io Ä {MpzBinDir}io.exe {MpzBinDir}io.exe z-logic Ä {MpzBinDir}logic.exe {MpzBinDir}logic.exe z-bit Ä {MpzBinDir}bit.exe {MpzBinDir}bit.exe z-powm Ä {MpzBinDir}t-powm.exe {MpzBinDir}t-powm.exe z-powm_ui Ä {MpzBinDir}t-powm_ui.exe {MpzBinDir}t-powm_ui.exe z-pow_ui Ä {MpzBinDir}t-pow_ui.exe {MpzBinDir}t-pow_ui.exe z-2exp Ä {MpzBinDir}t-2exp.exe {MpzBinDir}t-2exp.exe z-reuse Ä {MpzBinDir}reuse.exe {MpzBinDir}reuse.exe z-root Ä {MpzBinDir}t-root.exe {MpzBinDir}t-root.exe z-jac Ä {MpzBinDir}t-jac.exe {MpzBinDir}t-jac.exe z-bin Ä {MpzBinDir}t-bin.exe {MpzBinDir}t-bin.exe z-misc Ä {MpzBinDir}t-misc.exe {MpzBinDir}t-misc.exe check-mpq Ä q-cmp q-cmp_ui q-get_d q-cmp Ä {MpqBinDir}t-cmp.exe {MpqBinDir}t-cmp.exe q-cmp_ui Ä {MpqBinDir}t-cmp_ui.exe {MpqBinDir}t-cmp_ui.exe q-get_d Ä {MpqBinDir}t-get_d.exe {MpqBinDir}t-get_d.exe check-mpf Ä f-add f-sub f-conv f-sqrt f-muldiv f-dm2exp f-reuse ¶ f-get_d f-misc {MpfBinDir}t-add.exe Ä ::mpf:tests:t-add.o ::mpf:tests:ref.o {Link} {ToolOptions} -o {Targ} {Deps} {Lib} {SysLibs} {MpfBinDir}t-sub.exe Ä ::mpf:tests:t-sub.o ::mpf:tests:ref.o {Link} {ToolOptions} -o {Targ} {Deps} {Lib} {SysLibs} f-add Ä {MpfBinDir}t-add.exe {MpfBinDir}t-add.exe f-sub Ä {MpfBinDir}t-sub.exe {MpfBinDir}t-sub.exe f-conv Ä {MpfBinDir}t-conv.exe {MpfBinDir}t-conv.exe f-sqrt Ä {MpfBinDir}t-sqrt.exe {MpfBinDir}t-sqrt.exe f-muldiv Ä {MpfBinDir}t-muldiv.exe {MpfBinDir}t-muldiv.exe f-dm2exp Ä {MpfBinDir}t-dm2exp.exe {MpfBinDir}t-dm2exp.exe f-reuse Ä {MpfBinDir}reuse.exe {MpfBinDir}reuse.exe f-get_d Ä {MpfBinDir}t-get_d.exe {MpfBinDir}t-get_d.exe f-misc Ä {MpfBinDir}t-misc.exe {MpfBinDir}t-misc.exe \ No newline at end of file
diff --git a/macos/MpfBin/dummy b/macos/MpfBin/dummy
deleted file mode 100644
index d00491fd7..000000000
--- a/macos/MpfBin/dummy
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/macos/MpfObj/dummy b/macos/MpfObj/dummy
deleted file mode 100644
index d00491fd7..000000000
--- a/macos/MpfObj/dummy
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/macos/MpnObj/dummy b/macos/MpnObj/dummy
deleted file mode 100644
index d00491fd7..000000000
--- a/macos/MpnObj/dummy
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/macos/MpqBin/dummy b/macos/MpqBin/dummy
deleted file mode 100644
index d00491fd7..000000000
--- a/macos/MpqBin/dummy
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/macos/MpqObj/dummy b/macos/MpqObj/dummy
deleted file mode 100644
index d00491fd7..000000000
--- a/macos/MpqObj/dummy
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/macos/MpzBin/dummy b/macos/MpzBin/dummy
deleted file mode 100644
index d00491fd7..000000000
--- a/macos/MpzBin/dummy
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/macos/MpzObj/dummy b/macos/MpzObj/dummy
deleted file mode 100644
index d00491fd7..000000000
--- a/macos/MpzObj/dummy
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/macos/README b/macos/README
index 02a976c4f..d52b35665 100644
--- a/macos/README
+++ b/macos/README
@@ -18,9 +18,9 @@ The output is a library
Not all tests pass
- I never run the 'io' test the source don't compile
+ We never run the 'io' test the source don't compile
- If using Apple's compilers I never run the mpz t-mul, mpf t-add
+ If using Apple's compilers we never run the mpz t-mul, mpf t-add
and mpf t-sub because they don't compile with MrC 4.1
@@ -31,7 +31,9 @@ REQUIREMENTS
To compile into the library you need
Apple MPW (free) or CodeWarrior MPW
- (GMP build was tested with CodeWarrior Pro 5)
+ MacPerl 5 for MPW
+
+GMP build was tested with CodeWarrior Pro 5 and MPW Shell 3.5.
For compiling with the free Apple MPW development system you need a
68K Macintosh with a 68020 or higher microprocessor, or any Power
@@ -39,6 +41,17 @@ Macintosh with at least 8 Mb of memory and MacOS 7.5 or later.
See the CodeWarrior documentation for the CodeWarrior MPW requirements.
+MacPerl is free, download and install the MPW tool version from
+
+ http://www.macperl.com
+
+You need the "Appl" and "Tool" archive, for example
+
+ http://www.perl.com/CPAN-local/ports/mac/Mac_Perl_520r4_appl.bin
+ http://www.perl.com/CPAN-local/ports/mac/Mac_Perl_520r4_tool.bin
+
+See the file "Install.MPW_Perl" for MPW Perl installation instructions.
+
APPLE MPW INSTALLATION
@@ -136,23 +149,25 @@ BUILD PROCESS
=============
The "macos" folder/directory should be inside the top directory in the
-GMP source tree and should contain six files and the target directories.
+GMP source tree and should contain four files
README This file.
configure Create files and directories needed.
unix2mac Used to convert "configure" end-of-line chars.
Makefile.in Source for the final "Makefile".
- Makefile Make file for the Apple MPW environment.
- Makefile.cw Make file that uses the Metrowerk
- CodeWarrior MPW environment.
- Asm Contains preprocessed files from the
- "::mpn:powerpc32:" directory.
- *Obj Target directories for object code.
- *Bin Target directories for test programs.
Double click on the "MPW Shell" icon and set the directory using the
"Directory" menu to the "$GMP_SOURCE_DIR:macos:" folder/directory.
+You run "configure" in a two step process
+
+ % perl unix2mac configure > configure.mac
+ % perl configure.mac
+ or % perl configure.mac cw
+
+If you use CodeWarrior MPW you need to add the argument "cw" to the
+configure script.
+
Then run "Make"
% make
@@ -181,34 +196,6 @@ To remove the the resulting library as well you do
-GMP DEVELOPERS
-==============
-
-If you are a GMP developer, i.e. change any GMP files, you may need to
-recreate the make files and "config.h" file. Then you need MacPerl 5
-for MPW. MacPerl is free, download and install the MPW tool version
-from
-
- http://www.macperl.com
-
-You need the "Appl" and "Tool" archive, for example
-
- http://www.perl.com/CPAN-local/ports/mac/Mac_Perl_520r4_appl.bin
- http://www.perl.com/CPAN-local/ports/mac/Mac_Perl_520r4_tool.bin
-
-See the file "Install.MPW_Perl" for MPW Perl installation instructions.
-
-You run "configure" in a two step process
-
- % perl unix2mac configure > configure.mac
- % perl configure.mac
- or % perl configure.mac cw
-
-If you use CodeWarrior MPW you need to add the argument "cw" to the
-configure script.
-
-
-
PROBLEMS
========
@@ -239,7 +226,7 @@ remove files from the Unix side while MPW is running. MPW cache
information about what the file system looks like and gets very
confused or crash.
-If you really need a MacOS m68k version of GMP let me know and I may
+If you really need a MacOS m68k version of GMP let me know and we may
take the time to do the port.
diff --git a/macos/config.h b/macos/config.h
deleted file mode 100644
index a2e54e84e..000000000
--- a/macos/config.h
+++ /dev/null
@@ -1,159 +0,0 @@
-/* config.in. Generated automatically from configure.in by autoheader. */
-/*
-Copyright (C) 2000 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 2.1 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; see the file COPYING.LIB. If not, write to
-the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-MA 02111-1307, USA.
-*/
-
-
-/* Define if a limb is long long. */
-#undef _LONG_LONG_LIMB
-
-/* Define if we have native implementation of function. */
-#undef HAVE_NATIVE_
-#undef HAVE_NATIVE_mpn_add
-#undef HAVE_NATIVE_mpn_add_1
-#define HAVE_NATIVE_mpn_add_n 1
-#undef HAVE_NATIVE_mpn_add_nc
-#define HAVE_NATIVE_mpn_addmul_1 1
-#undef HAVE_NATIVE_mpn_addmul_1c
-#undef HAVE_NATIVE_mpn_addsub_n
-#undef HAVE_NATIVE_mpn_addsub_nc
-#undef HAVE_NATIVE_mpn_and_n
-#undef HAVE_NATIVE_mpn_andn_n
-#undef HAVE_NATIVE_mpn_bdivmod
-#undef HAVE_NATIVE_mpn_cmp
-#undef HAVE_NATIVE_mpn_com_n
-#undef HAVE_NATIVE_mpn_copyd
-#undef HAVE_NATIVE_mpn_copyi
-#undef HAVE_NATIVE_mpn_divexact_by3c
-#undef HAVE_NATIVE_mpn_divrem
-#undef HAVE_NATIVE_mpn_divrem_1
-#undef HAVE_NATIVE_mpn_divrem_1c
-#undef HAVE_NATIVE_mpn_divrem_2
-#undef HAVE_NATIVE_mpn_divrem_newton
-#undef HAVE_NATIVE_mpn_divrem_classic
-#undef HAVE_NATIVE_mpn_dump
-#undef HAVE_NATIVE_mpn_gcd
-#undef HAVE_NATIVE_mpn_gcd_1
-#undef HAVE_NATIVE_mpn_gcdext
-#undef HAVE_NATIVE_mpn_get_str
-#undef HAVE_NATIVE_mpn_hamdist
-#undef HAVE_NATIVE_mpn_invert_limb
-#undef HAVE_NATIVE_mpn_ior_n
-#undef HAVE_NATIVE_mpn_iorn_n
-#define HAVE_NATIVE_mpn_lshift 1
-#undef HAVE_NATIVE_mpn_mod_1
-#undef HAVE_NATIVE_mpn_mod_1c
-#undef HAVE_NATIVE_mpn_mul
-#define HAVE_NATIVE_mpn_mul_1 1
-#undef HAVE_NATIVE_mpn_mul_1c
-#undef HAVE_NATIVE_mpn_mul_basecase
-#undef HAVE_NATIVE_mpn_mul_n
-#undef HAVE_NATIVE_mpn_nand_n
-#undef HAVE_NATIVE_mpn_nior_n
-#undef HAVE_NATIVE_mpn_perfect_square_p
-#undef HAVE_NATIVE_mpn_popcount
-#undef HAVE_NATIVE_mpn_preinv_mod_1
-#undef HAVE_NATIVE_mpn_random2
-#undef HAVE_NATIVE_mpn_random
-#undef HAVE_NATIVE_mpn_rawrandom
-#define HAVE_NATIVE_mpn_rshift 1
-#undef HAVE_NATIVE_mpn_scan0
-#undef HAVE_NATIVE_mpn_scan1
-#undef HAVE_NATIVE_mpn_set_str
-#undef HAVE_NATIVE_mpn_sqrtrem
-#undef HAVE_NATIVE_mpn_sqr_basecase
-#undef HAVE_NATIVE_mpn_sub
-#undef HAVE_NATIVE_mpn_sub_1
-#define HAVE_NATIVE_mpn_sub_n 1
-#undef HAVE_NATIVE_mpn_sub_nc
-#define HAVE_NATIVE_mpn_submul_1 1
-#undef HAVE_NATIVE_mpn_submul_1c
-#undef HAVE_NATIVE_mpn_udiv_w_sdiv
-#undef HAVE_NATIVE_mpn_umul_ppmm
-#undef HAVE_NATIVE_mpn_udiv_qrnnd
-#undef HAVE_NATIVE_mpn_xor_n
-#undef HAVE_NATIVE_mpn_xnor_n
-
-/* Define to 1 if you have the declaration of `optarg', and to 0 if you don't.
- */
-#undef HAVE_DECL_OPTARG
-
-/* ./configure --enable-assert option, to enable some ASSERT()s */
-#undef WANT_ASSERT
-
-/* Define if you have the <sys/sysctl.h> header file. */
-#undef HAVE_SYS_SYSCTL_H
-
-/* Define if you have the `strtoul' function. */
-#undef HAVE_STRTOUL
-
-/* Name of package */
-#define PACKAGE "gmp"
-
-/* Define if you have the `sysctlbyname' function. */
-#undef HAVE_SYSCTLBYNAME
-
-/* Define if the system has the type `void'. */
-#undef HAVE_VOID
-
-/* Define if you have the `popen' function. */
-#undef HAVE_POPEN
-
-/* ./configure --disable-alloca option, to use stack-alloc.c, not alloca */
-#undef USE_STACK_ALLOC
-
-/* Define if cpp supports the ANSI # stringizing operator. */
-#undef HAVE_STRINGIZE
-
-/* Define if you have the <sys/time.h> header file. */
-#undef HAVE_SYS_TIME_H
-
-/* Define if you have the `sysconf' function. */
-#undef HAVE_SYSCONF
-
-/* Define if you have the `getpagesize' function. */
-#undef HAVE_GETPAGESIZE
-
-/* Define if you have the `processor_info' function. */
-#undef HAVE_PROCESSOR_INFO
-
-/* Version number of package */
-#define VERSION "3.1"
-
-/* Define if you have the `getopt_long' function. */
-#undef HAVE_GETOPT_LONG
-
-/* Define if you have the <getopt.h> header file. */
-#undef HAVE_GETOPT_H
-
-/* Define if you have the ANSI C header files. */
-#define STDC_HEADERS 1
-
-/* Define if a speed_cyclecounter exists (for the tune programs) */
-#undef HAVE_SPEED_CYCLECOUNTER
-
-/* Define if mpn/tests has calling conventions checking for the CPU */
-#undef HAVE_CALLING_CONVENTIONS
-
-/* Define if you have the <string.h> header file. */
-#undef HAVE_STRING_H
-
-/* Define if you have the <unistd.h> header file. */
-#undef HAVE_UNISTD_H