head 1.1; branch 1.1.1; access; symbols netbsd-11-0-RC6:1.1.1.5 netbsd-11-0-RC5:1.1.1.5 netbsd-11-0-RC4:1.1.1.5 netbsd-11-0-RC3:1.1.1.5 netbsd-11-0-RC2:1.1.1.5 netbsd-11-0-RC1:1.1.1.5 perseant-exfatfs-base-20250801:1.1.1.5 netbsd-11:1.1.1.5.0.6 netbsd-11-base:1.1.1.5 netbsd-10-1-RELEASE:1.1.1.5 perseant-exfatfs-base-20240630:1.1.1.5 perseant-exfatfs:1.1.1.5.0.4 perseant-exfatfs-base:1.1.1.5 netbsd-8-3-RELEASE:1.1.1.2 netbsd-9-4-RELEASE:1.1.1.3 netbsd-10-0-RELEASE:1.1.1.5 netbsd-10-0-RC6:1.1.1.5 netbsd-10-0-RC5:1.1.1.5 netbsd-10-0-RC4:1.1.1.5 netbsd-10-0-RC3:1.1.1.5 netbsd-10-0-RC2:1.1.1.5 netbsd-10-0-RC1:1.1.1.5 netbsd-10:1.1.1.5.0.2 netbsd-10-base:1.1.1.5 netbsd-9-3-RELEASE:1.1.1.3 gmp-6-2-1:1.1.1.5 cjep_sun2x-base1:1.1.1.4 cjep_sun2x:1.1.1.4.0.4 cjep_sun2x-base:1.1.1.4 cjep_staticlib_x-base1:1.1.1.4 netbsd-9-2-RELEASE:1.1.1.3 cjep_staticlib_x:1.1.1.4.0.2 cjep_staticlib_x-base:1.1.1.4 netbsd-9-1-RELEASE:1.1.1.3 gmp-6-2-0:1.1.1.4 phil-wifi-20200421:1.1.1.3 phil-wifi-20200411:1.1.1.3 is-mlppp:1.1.1.3.0.8 is-mlppp-base:1.1.1.3 phil-wifi-20200406:1.1.1.3 netbsd-8-2-RELEASE:1.1.1.2 netbsd-9-0-RELEASE:1.1.1.3 netbsd-9-0-RC2:1.1.1.3 netbsd-9-0-RC1:1.1.1.3 phil-wifi-20191119:1.1.1.3 netbsd-9:1.1.1.3.0.6 netbsd-9-base:1.1.1.3 phil-wifi-20190609:1.1.1.3 netbsd-8-1-RELEASE:1.1.1.2 netbsd-8-1-RC1:1.1.1.2 pgoyette-compat-merge-20190127:1.1.1.3 pgoyette-compat-20190127:1.1.1.3 pgoyette-compat-20190118:1.1.1.3 pgoyette-compat-1226:1.1.1.3 pgoyette-compat-1126:1.1.1.3 pgoyette-compat-1020:1.1.1.3 pgoyette-compat-0930:1.1.1.3 pgoyette-compat-0906:1.1.1.3 netbsd-7-2-RELEASE:1.1.1.2 pgoyette-compat-0728:1.1.1.3 netbsd-8-0-RELEASE:1.1.1.2 phil-wifi:1.1.1.3.0.4 phil-wifi-base:1.1.1.3 pgoyette-compat-0625:1.1.1.3 netbsd-8-0-RC2:1.1.1.2 pgoyette-compat-0521:1.1.1.3 pgoyette-compat-0502:1.1.1.3 pgoyette-compat-0422:1.1.1.3 netbsd-8-0-RC1:1.1.1.2 pgoyette-compat-0415:1.1.1.3 pgoyette-compat-0407:1.1.1.3 pgoyette-compat-0330:1.1.1.3 pgoyette-compat-0322:1.1.1.3 pgoyette-compat-0315:1.1.1.3 netbsd-7-1-2-RELEASE:1.1.1.2 pgoyette-compat:1.1.1.3.0.2 pgoyette-compat-base:1.1.1.3 netbsd-7-1-1-RELEASE:1.1.1.2 matt-nb8-mediatek:1.1.1.2.0.22 matt-nb8-mediatek-base:1.1.1.2 gmp-6-1-2:1.1.1.3 perseant-stdc-iso10646:1.1.1.2.0.20 perseant-stdc-iso10646-base:1.1.1.2 netbsd-8:1.1.1.2.0.18 netbsd-8-base:1.1.1.2 prg-localcount2-base3:1.1.1.2 prg-localcount2-base2:1.1.1.2 prg-localcount2-base1:1.1.1.2 prg-localcount2:1.1.1.2.0.16 prg-localcount2-base:1.1.1.2 pgoyette-localcount-20170426:1.1.1.2 bouyer-socketcan-base1:1.1.1.2 pgoyette-localcount-20170320:1.1.1.2 netbsd-7-1:1.1.1.2.0.14 netbsd-7-1-RELEASE:1.1.1.2 netbsd-7-1-RC2:1.1.1.2 netbsd-7-nhusb-base-20170116:1.1.1.2 bouyer-socketcan:1.1.1.2.0.12 bouyer-socketcan-base:1.1.1.2 pgoyette-localcount-20170107:1.1.1.2 netbsd-7-1-RC1:1.1.1.2 pgoyette-localcount-20161104:1.1.1.2 netbsd-7-0-2-RELEASE:1.1.1.2 localcount-20160914:1.1.1.2 netbsd-7-nhusb:1.1.1.2.0.10 netbsd-7-nhusb-base:1.1.1.2 pgoyette-localcount-20160806:1.1.1.2 pgoyette-localcount-20160726:1.1.1.2 pgoyette-localcount:1.1.1.2.0.8 pgoyette-localcount-base:1.1.1.2 netbsd-7-0-1-RELEASE:1.1.1.2 netbsd-7-0:1.1.1.2.0.6 netbsd-7-0-RELEASE:1.1.1.2 netbsd-7-0-RC3:1.1.1.2 netbsd-7-0-RC2:1.1.1.2 netbsd-7-0-RC1:1.1.1.2 netbsd-6-0-6-RELEASE:1.1.1.1 netbsd-6-1-5-RELEASE:1.1.1.1 netbsd-7:1.1.1.2.0.4 netbsd-7-base:1.1.1.2 yamt-pagecache-base9:1.1.1.2 yamt-pagecache-tag8:1.1.1.1 netbsd-6-1-4-RELEASE:1.1.1.1 netbsd-6-0-5-RELEASE:1.1.1.1 tls-earlyentropy:1.1.1.2.0.2 tls-earlyentropy-base:1.1.1.2 riastradh-xf86-video-intel-2-7-1-pre-2-21-15:1.1.1.2 riastradh-drm2-base3:1.1.1.2 netbsd-6-1-3-RELEASE:1.1.1.1 netbsd-6-0-4-RELEASE:1.1.1.1 gmp-5-1-3:1.1.1.2 netbsd-6-1-2-RELEASE:1.1.1.1 netbsd-6-0-3-RELEASE:1.1.1.1 netbsd-6-1-1-RELEASE:1.1.1.1 riastradh-drm2-base2:1.1.1.1 riastradh-drm2-base1:1.1.1.1 riastradh-drm2:1.1.1.1.0.12 riastradh-drm2-base:1.1.1.1 netbsd-6-1:1.1.1.1.0.16 netbsd-6-0-2-RELEASE:1.1.1.1 netbsd-6-1-RELEASE:1.1.1.1 netbsd-6-1-RC4:1.1.1.1 netbsd-6-1-RC3:1.1.1.1 agc-symver:1.1.1.1.0.14 agc-symver-base:1.1.1.1 netbsd-6-1-RC2:1.1.1.1 netbsd-6-1-RC1:1.1.1.1 yamt-pagecache-base8:1.1.1.1 netbsd-6-0-1-RELEASE:1.1.1.1 yamt-pagecache-base7:1.1.1.1 matt-nb6-plus-nbase:1.1.1.1 yamt-pagecache-base6:1.1.1.1 netbsd-6-0:1.1.1.1.0.10 netbsd-6-0-RELEASE:1.1.1.1 netbsd-6-0-RC2:1.1.1.1 tls-maxphys:1.1.1.1.0.8 tls-maxphys-base:1.1.1.2 matt-nb6-plus:1.1.1.1.0.6 matt-nb6-plus-base:1.1.1.1 netbsd-6-0-RC1:1.1.1.1 yamt-pagecache-base5:1.1.1.1 yamt-pagecache-base4:1.1.1.1 netbsd-6:1.1.1.1.0.4 netbsd-6-base:1.1.1.1 yamt-pagecache-base3:1.1.1.1 yamt-pagecache-base2:1.1.1.1 yamt-pagecache:1.1.1.1.0.2 yamt-pagecache-base:1.1.1.1 gmp-5-0-2:1.1.1.1 gmp:1.1.1; locks; strict; comment @# @; 1.1 date 2011.06.20.05.54.49; author mrg; state Exp; branches 1.1.1.1; next ; 1.1.1.1 date 2011.06.20.05.54.49; author mrg; state Exp; branches 1.1.1.1.2.1 1.1.1.1.8.1; next 1.1.1.2; 1.1.1.2 date 2013.11.29.07.49.48; author mrg; state Exp; branches; next 1.1.1.3; commitid L2Av4PuGmdoL39fx; 1.1.1.3 date 2017.08.22.09.40.49; author mrg; state Exp; branches; next 1.1.1.4; commitid W5kmAIk8hwVpSb4A; 1.1.1.4 date 2020.09.27.00.27.06; author mrg; state Exp; branches; next 1.1.1.5; commitid BWuUFuEU17KgrCpC; 1.1.1.5 date 2021.07.11.21.14.45; author mrg; state Exp; branches; next ; commitid saHZLNSlLcjF8C0D; 1.1.1.1.2.1 date 2014.05.22.14.08.59; author yamt; state Exp; branches; next ; commitid nx2BSsHy0NPeAxBx; 1.1.1.1.8.1 date 2014.08.19.23.59.48; author tls; state Exp; branches; next ; commitid jTnpym9Qu0o4R1Nx; desc @@ 1.1 log @Initial revision @ text @This is ../../gmp/doc/gmp.info, produced by makeinfo version 4.8 from ../../gmp/doc/gmp.texi. This manual describes how to install and use the GNU multiple precision arithmetic library, version 5.0.2. Copyright 1991, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with the Front-Cover Texts being "A GNU Manual", and with the Back-Cover Texts being "You have freedom to copy and modify this GNU Manual, like GNU software". A copy of the license is included in *Note GNU Free Documentation License::. INFO-DIR-SECTION GNU libraries START-INFO-DIR-ENTRY * gmp: (gmp). GNU Multiple Precision Arithmetic Library. END-INFO-DIR-ENTRY  Indirect: gmp.info-1: 987 gmp.info-2: 300718  Tag Table: (Indirect) Node: Top987 Node: Copying3223 Node: Introduction to GMP5074 Node: Installing GMP7785 Node: Build Options8517 Node: ABI and ISA24585 Node: Notes for Package Builds34271 Node: Notes for Particular Systems37358 Node: Known Build Problems43915 Node: Performance optimization47449 Node: GMP Basics48578 Node: Headers and Libraries49226 Node: Nomenclature and Types50650 Node: Function Classes52647 Node: Variable Conventions54340 Node: Parameter Conventions55949 Node: Memory Management58005 Node: Reentrancy59133 Node: Useful Macros and Constants61006 Node: Compatibility with older versions62004 Node: Demonstration Programs62965 Node: Efficiency64830 Node: Debugging72454 Node: Profiling79012 Node: Autoconf83003 Node: Emacs84782 Node: Reporting Bugs85388 Node: Integer Functions87931 Node: Initializing Integers88707 Node: Assigning Integers90854 Node: Simultaneous Integer Init & Assign92441 Node: Converting Integers94066 Node: Integer Arithmetic96988 Node: Integer Division98574 Node: Integer Exponentiation104884 Node: Integer Roots106324 Node: Number Theoretic Functions107998 Node: Integer Comparisons114141 Node: Integer Logic and Bit Fiddling115519 Node: I/O of Integers118066 Node: Integer Random Numbers121035 Node: Integer Import and Export123646 Node: Miscellaneous Integer Functions127656 Node: Integer Special Functions129516 Node: Rational Number Functions132603 Node: Initializing Rationals133796 Node: Rational Conversions136257 Node: Rational Arithmetic137988 Node: Comparing Rationals139292 Node: Applying Integer Functions140659 Node: I/O of Rationals142142 Node: Floating-point Functions144184 Node: Initializing Floats147069 Node: Assigning Floats151156 Node: Simultaneous Float Init & Assign153723 Node: Converting Floats155251 Node: Float Arithmetic158499 Node: Float Comparison160512 Node: I/O of Floats162093 Node: Miscellaneous Float Functions164776 Node: Low-level Functions166718 Node: Random Number Functions190930 Node: Random State Initialization191998 Node: Random State Seeding194856 Node: Random State Miscellaneous196245 Node: Formatted Output196886 Node: Formatted Output Strings197131 Node: Formatted Output Functions202345 Node: C++ Formatted Output206420 Node: Formatted Input209102 Node: Formatted Input Strings209338 Node: Formatted Input Functions213990 Node: C++ Formatted Input216959 Node: C++ Class Interface218862 Node: C++ Interface General219863 Node: C++ Interface Integers222933 Node: C++ Interface Rationals226278 Node: C++ Interface Floats229865 Node: C++ Interface Random Numbers235575 Node: C++ Interface Limitations237981 Node: BSD Compatible Functions240801 Node: Custom Allocation245512 Node: Language Bindings249830 Node: Algorithms253809 Node: Multiplication Algorithms254509 Node: Basecase Multiplication255481 Node: Karatsuba Multiplication257389 Node: Toom 3-Way Multiplication261014 Node: Toom 4-Way Multiplication267428 Node: FFT Multiplication268800 Node: Other Multiplication274136 Node: Unbalanced Multiplication276610 Node: Division Algorithms277398 Node: Single Limb Division277777 Node: Basecase Division280668 Node: Divide and Conquer Division281871 Node: Block-Wise Barrett Division283940 Node: Exact Division284592 Node: Exact Remainder287757 Node: Small Quotient Division289984 Node: Greatest Common Divisor Algorithms291582 Node: Binary GCD291879 Node: Lehmer's Algorithm294728 Node: Subquadratic GCD296947 Node: Extended GCD299406 Node: Jacobi Symbol300718 Node: Powering Algorithms301634 Node: Normal Powering Algorithm301897 Node: Modular Powering Algorithm302425 Node: Root Extraction Algorithms303205 Node: Square Root Algorithm303520 Node: Nth Root Algorithm305661 Node: Perfect Square Algorithm306446 Node: Perfect Power Algorithm308532 Node: Radix Conversion Algorithms309153 Node: Binary to Radix309529 Node: Radix to Binary313458 Node: Other Algorithms315546 Node: Prime Testing Algorithm315898 Node: Factorial Algorithm317082 Node: Binomial Coefficients Algorithm318485 Node: Fibonacci Numbers Algorithm319379 Node: Lucas Numbers Algorithm321853 Node: Random Number Algorithms322574 Node: Assembly Coding324695 Node: Assembly Code Organisation325655 Node: Assembly Basics326622 Node: Assembly Carry Propagation327772 Node: Assembly Cache Handling329603 Node: Assembly Functional Units331764 Node: Assembly Floating Point333377 Node: Assembly SIMD Instructions337155 Node: Assembly Software Pipelining338137 Node: Assembly Loop Unrolling339199 Node: Assembly Writing Guide341414 Node: Internals344179 Node: Integer Internals344691 Node: Rational Internals346947 Node: Float Internals348185 Node: Raw Output Internals355599 Node: C++ Interface Internals356793 Node: Contributors360079 Node: References365037 Node: GNU Free Documentation License370780 Node: Concept Index395949 Node: Function Index442131  End Tag Table @ 1.1.1.1 log @initial import of GMP 5.0.2. GNU MP is a library for arbitrary precision arithmetic, operating on signed integers, rational numbers, and floating point numbers. It has a rich set of functions, and the functions have a regular interface. GMP is necessary for GCC >= 4.2. @ text @@ 1.1.1.1.8.1 log @Rebase to HEAD as of a few days ago. @ text @d1 1 a1 1 This is ../../gmp/doc/gmp.info, produced by makeinfo version 4.13 from d4 2 a5 2 This manual describes how to install and use the GNU multiple precision arithmetic library, version 5.1.3. d8 2 a9 2 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc. d17 1 a17 1 is included in *note GNU Free Documentation License::. d26 2 a27 2 gmp.info-1: 997 gmp.info-2: 300733 d31 146 a176 146 Node: Top997 Node: Copying3183 Node: Introduction to GMP5034 Node: Installing GMP7745 Node: Build Options8477 Node: ABI and ISA24261 Node: Notes for Package Builds33832 Node: Notes for Particular Systems36919 Node: Known Build Problems43516 Node: Performance optimization47050 Node: GMP Basics48179 Node: Headers and Libraries48827 Node: Nomenclature and Types50251 Node: Function Classes52247 Node: Variable Conventions53781 Node: Parameter Conventions55390 Node: Memory Management57446 Node: Reentrancy58574 Node: Useful Macros and Constants60447 Node: Compatibility with older versions61438 Node: Demonstration Programs62349 Node: Efficiency64214 Node: Debugging71838 Node: Profiling78863 Node: Autoconf82854 Node: Emacs84633 Node: Reporting Bugs85239 Node: Integer Functions87865 Node: Initializing Integers88641 Node: Assigning Integers91017 Node: Simultaneous Integer Init & Assign92628 Node: Converting Integers94275 Node: Integer Arithmetic97239 Node: Integer Division98975 Node: Integer Exponentiation105727 Node: Integer Roots107221 Node: Number Theoretic Functions108941 Node: Integer Comparisons116416 Node: Integer Logic and Bit Fiddling117854 Node: I/O of Integers120499 Node: Integer Random Numbers123490 Node: Integer Import and Export126107 Node: Miscellaneous Integer Functions130123 Node: Integer Special Functions132037 Node: Rational Number Functions135136 Node: Initializing Rationals136329 Node: Rational Conversions138808 Node: Rational Arithmetic140558 Node: Comparing Rationals141970 Node: Applying Integer Functions143378 Node: I/O of Rationals144897 Node: Floating-point Functions146955 Node: Initializing Floats149840 Node: Assigning Floats153933 Node: Simultaneous Float Init & Assign156524 Node: Converting Floats158074 Node: Float Arithmetic161364 Node: Float Comparison163517 Node: I/O of Floats165177 Node: Miscellaneous Float Functions167866 Node: Low-level Functions169868 Node: Random Number Functions194385 Node: Random State Initialization195453 Node: Random State Seeding198318 Node: Random State Miscellaneous199723 Node: Formatted Output200365 Node: Formatted Output Strings200610 Node: Formatted Output Functions205989 Node: C++ Formatted Output210064 Node: Formatted Input212746 Node: Formatted Input Strings212982 Node: Formatted Input Functions217634 Node: C++ Formatted Input220603 Node: C++ Class Interface222506 Node: C++ Interface General223500 Node: C++ Interface Integers226570 Node: C++ Interface Rationals230285 Node: C++ Interface Floats234302 Node: C++ Interface Random Numbers240306 Node: C++ Interface Limitations242708 Node: Custom Allocation245528 Node: Language Bindings249747 Node: Algorithms253702 Node: Multiplication Algorithms254402 Node: Basecase Multiplication255491 Node: Karatsuba Multiplication257399 Node: Toom 3-Way Multiplication261025 Node: Toom 4-Way Multiplication267444 Node: Higher degree Toom'n'half268823 Node: FFT Multiplication270108 Node: Other Multiplication275443 Node: Unbalanced Multiplication277917 Node: Division Algorithms278705 Node: Single Limb Division279084 Node: Basecase Division281974 Node: Divide and Conquer Division283177 Node: Block-Wise Barrett Division285246 Node: Exact Division285898 Node: Exact Remainder289063 Node: Small Quotient Division291313 Node: Greatest Common Divisor Algorithms292911 Node: Binary GCD293208 Node: Lehmer's Algorithm296057 Node: Subquadratic GCD298276 Node: Extended GCD300733 Node: Jacobi Symbol302045 Node: Powering Algorithms303060 Node: Normal Powering Algorithm303323 Node: Modular Powering Algorithm303851 Node: Root Extraction Algorithms304633 Node: Square Root Algorithm304948 Node: Nth Root Algorithm307089 Node: Perfect Square Algorithm307874 Node: Perfect Power Algorithm309961 Node: Radix Conversion Algorithms310582 Node: Binary to Radix310958 Node: Radix to Binary314888 Node: Other Algorithms316976 Node: Prime Testing Algorithm317328 Node: Factorial Algorithm318512 Node: Binomial Coefficients Algorithm320902 Node: Fibonacci Numbers Algorithm321796 Node: Lucas Numbers Algorithm324270 Node: Random Number Algorithms324991 Node: Assembly Coding327113 Node: Assembly Code Organisation328073 Node: Assembly Basics329040 Node: Assembly Carry Propagation330190 Node: Assembly Cache Handling332021 Node: Assembly Functional Units334182 Node: Assembly Floating Point335795 Node: Assembly SIMD Instructions339573 Node: Assembly Software Pipelining340555 Node: Assembly Loop Unrolling341617 Node: Assembly Writing Guide343832 Node: Internals346597 Node: Integer Internals347109 Node: Rational Internals349365 Node: Float Internals350603 Node: Raw Output Internals358017 Node: C++ Interface Internals359211 Node: Contributors362497 Node: References368247 Node: GNU Free Documentation License374002 Node: Concept Index399171 Node: Function Index445060 a178 5  Local Variables: coding: iso-8859-1 End: @ 1.1.1.1.2.1 log @sync with head. for a reference, the tree before this commit was tagged as yamt-pagecache-tag8. this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments") @ text @d1 1 a1 1 This is ../../gmp/doc/gmp.info, produced by makeinfo version 4.13 from d4 2 a5 2 This manual describes how to install and use the GNU multiple precision arithmetic library, version 5.1.3. d8 2 a9 2 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc. d17 1 a17 1 is included in *note GNU Free Documentation License::. d26 2 a27 2 gmp.info-1: 997 gmp.info-2: 300733 d31 146 a176 146 Node: Top997 Node: Copying3183 Node: Introduction to GMP5034 Node: Installing GMP7745 Node: Build Options8477 Node: ABI and ISA24261 Node: Notes for Package Builds33832 Node: Notes for Particular Systems36919 Node: Known Build Problems43516 Node: Performance optimization47050 Node: GMP Basics48179 Node: Headers and Libraries48827 Node: Nomenclature and Types50251 Node: Function Classes52247 Node: Variable Conventions53781 Node: Parameter Conventions55390 Node: Memory Management57446 Node: Reentrancy58574 Node: Useful Macros and Constants60447 Node: Compatibility with older versions61438 Node: Demonstration Programs62349 Node: Efficiency64214 Node: Debugging71838 Node: Profiling78863 Node: Autoconf82854 Node: Emacs84633 Node: Reporting Bugs85239 Node: Integer Functions87865 Node: Initializing Integers88641 Node: Assigning Integers91017 Node: Simultaneous Integer Init & Assign92628 Node: Converting Integers94275 Node: Integer Arithmetic97239 Node: Integer Division98975 Node: Integer Exponentiation105727 Node: Integer Roots107221 Node: Number Theoretic Functions108941 Node: Integer Comparisons116416 Node: Integer Logic and Bit Fiddling117854 Node: I/O of Integers120499 Node: Integer Random Numbers123490 Node: Integer Import and Export126107 Node: Miscellaneous Integer Functions130123 Node: Integer Special Functions132037 Node: Rational Number Functions135136 Node: Initializing Rationals136329 Node: Rational Conversions138808 Node: Rational Arithmetic140558 Node: Comparing Rationals141970 Node: Applying Integer Functions143378 Node: I/O of Rationals144897 Node: Floating-point Functions146955 Node: Initializing Floats149840 Node: Assigning Floats153933 Node: Simultaneous Float Init & Assign156524 Node: Converting Floats158074 Node: Float Arithmetic161364 Node: Float Comparison163517 Node: I/O of Floats165177 Node: Miscellaneous Float Functions167866 Node: Low-level Functions169868 Node: Random Number Functions194385 Node: Random State Initialization195453 Node: Random State Seeding198318 Node: Random State Miscellaneous199723 Node: Formatted Output200365 Node: Formatted Output Strings200610 Node: Formatted Output Functions205989 Node: C++ Formatted Output210064 Node: Formatted Input212746 Node: Formatted Input Strings212982 Node: Formatted Input Functions217634 Node: C++ Formatted Input220603 Node: C++ Class Interface222506 Node: C++ Interface General223500 Node: C++ Interface Integers226570 Node: C++ Interface Rationals230285 Node: C++ Interface Floats234302 Node: C++ Interface Random Numbers240306 Node: C++ Interface Limitations242708 Node: Custom Allocation245528 Node: Language Bindings249747 Node: Algorithms253702 Node: Multiplication Algorithms254402 Node: Basecase Multiplication255491 Node: Karatsuba Multiplication257399 Node: Toom 3-Way Multiplication261025 Node: Toom 4-Way Multiplication267444 Node: Higher degree Toom'n'half268823 Node: FFT Multiplication270108 Node: Other Multiplication275443 Node: Unbalanced Multiplication277917 Node: Division Algorithms278705 Node: Single Limb Division279084 Node: Basecase Division281974 Node: Divide and Conquer Division283177 Node: Block-Wise Barrett Division285246 Node: Exact Division285898 Node: Exact Remainder289063 Node: Small Quotient Division291313 Node: Greatest Common Divisor Algorithms292911 Node: Binary GCD293208 Node: Lehmer's Algorithm296057 Node: Subquadratic GCD298276 Node: Extended GCD300733 Node: Jacobi Symbol302045 Node: Powering Algorithms303060 Node: Normal Powering Algorithm303323 Node: Modular Powering Algorithm303851 Node: Root Extraction Algorithms304633 Node: Square Root Algorithm304948 Node: Nth Root Algorithm307089 Node: Perfect Square Algorithm307874 Node: Perfect Power Algorithm309961 Node: Radix Conversion Algorithms310582 Node: Binary to Radix310958 Node: Radix to Binary314888 Node: Other Algorithms316976 Node: Prime Testing Algorithm317328 Node: Factorial Algorithm318512 Node: Binomial Coefficients Algorithm320902 Node: Fibonacci Numbers Algorithm321796 Node: Lucas Numbers Algorithm324270 Node: Random Number Algorithms324991 Node: Assembly Coding327113 Node: Assembly Code Organisation328073 Node: Assembly Basics329040 Node: Assembly Carry Propagation330190 Node: Assembly Cache Handling332021 Node: Assembly Functional Units334182 Node: Assembly Floating Point335795 Node: Assembly SIMD Instructions339573 Node: Assembly Software Pipelining340555 Node: Assembly Loop Unrolling341617 Node: Assembly Writing Guide343832 Node: Internals346597 Node: Integer Internals347109 Node: Rational Internals349365 Node: Float Internals350603 Node: Raw Output Internals358017 Node: C++ Interface Internals359211 Node: Contributors362497 Node: References368247 Node: GNU Free Documentation License374002 Node: Concept Index399171 Node: Function Index445060 a178 5  Local Variables: coding: iso-8859-1 End: @ 1.1.1.2 log @initial import GMP 5.1.3 sources. changes include: fixes for: - mpn_sbpi1_div_qr_sec and mpn_sbpi1_div_r_sec - mpz_powm_ui - AMD family 11h - mpz_powm_sec and mpn_powm_sec - ASSERT() fixes - gcd, gcdext, and invert function fixes - some PPC division operations @ text @d1 1 a1 1 This is ../../gmp/doc/gmp.info, produced by makeinfo version 4.13 from d4 2 a5 2 This manual describes how to install and use the GNU multiple precision arithmetic library, version 5.1.3. d8 2 a9 2 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc. d17 1 a17 1 is included in *note GNU Free Documentation License::. d26 2 a27 2 gmp.info-1: 997 gmp.info-2: 300733 d31 146 a176 146 Node: Top997 Node: Copying3183 Node: Introduction to GMP5034 Node: Installing GMP7745 Node: Build Options8477 Node: ABI and ISA24261 Node: Notes for Package Builds33832 Node: Notes for Particular Systems36919 Node: Known Build Problems43516 Node: Performance optimization47050 Node: GMP Basics48179 Node: Headers and Libraries48827 Node: Nomenclature and Types50251 Node: Function Classes52247 Node: Variable Conventions53781 Node: Parameter Conventions55390 Node: Memory Management57446 Node: Reentrancy58574 Node: Useful Macros and Constants60447 Node: Compatibility with older versions61438 Node: Demonstration Programs62349 Node: Efficiency64214 Node: Debugging71838 Node: Profiling78863 Node: Autoconf82854 Node: Emacs84633 Node: Reporting Bugs85239 Node: Integer Functions87865 Node: Initializing Integers88641 Node: Assigning Integers91017 Node: Simultaneous Integer Init & Assign92628 Node: Converting Integers94275 Node: Integer Arithmetic97239 Node: Integer Division98975 Node: Integer Exponentiation105727 Node: Integer Roots107221 Node: Number Theoretic Functions108941 Node: Integer Comparisons116416 Node: Integer Logic and Bit Fiddling117854 Node: I/O of Integers120499 Node: Integer Random Numbers123490 Node: Integer Import and Export126107 Node: Miscellaneous Integer Functions130123 Node: Integer Special Functions132037 Node: Rational Number Functions135136 Node: Initializing Rationals136329 Node: Rational Conversions138808 Node: Rational Arithmetic140558 Node: Comparing Rationals141970 Node: Applying Integer Functions143378 Node: I/O of Rationals144897 Node: Floating-point Functions146955 Node: Initializing Floats149840 Node: Assigning Floats153933 Node: Simultaneous Float Init & Assign156524 Node: Converting Floats158074 Node: Float Arithmetic161364 Node: Float Comparison163517 Node: I/O of Floats165177 Node: Miscellaneous Float Functions167866 Node: Low-level Functions169868 Node: Random Number Functions194385 Node: Random State Initialization195453 Node: Random State Seeding198318 Node: Random State Miscellaneous199723 Node: Formatted Output200365 Node: Formatted Output Strings200610 Node: Formatted Output Functions205989 Node: C++ Formatted Output210064 Node: Formatted Input212746 Node: Formatted Input Strings212982 Node: Formatted Input Functions217634 Node: C++ Formatted Input220603 Node: C++ Class Interface222506 Node: C++ Interface General223500 Node: C++ Interface Integers226570 Node: C++ Interface Rationals230285 Node: C++ Interface Floats234302 Node: C++ Interface Random Numbers240306 Node: C++ Interface Limitations242708 Node: Custom Allocation245528 Node: Language Bindings249747 Node: Algorithms253702 Node: Multiplication Algorithms254402 Node: Basecase Multiplication255491 Node: Karatsuba Multiplication257399 Node: Toom 3-Way Multiplication261025 Node: Toom 4-Way Multiplication267444 Node: Higher degree Toom'n'half268823 Node: FFT Multiplication270108 Node: Other Multiplication275443 Node: Unbalanced Multiplication277917 Node: Division Algorithms278705 Node: Single Limb Division279084 Node: Basecase Division281974 Node: Divide and Conquer Division283177 Node: Block-Wise Barrett Division285246 Node: Exact Division285898 Node: Exact Remainder289063 Node: Small Quotient Division291313 Node: Greatest Common Divisor Algorithms292911 Node: Binary GCD293208 Node: Lehmer's Algorithm296057 Node: Subquadratic GCD298276 Node: Extended GCD300733 Node: Jacobi Symbol302045 Node: Powering Algorithms303060 Node: Normal Powering Algorithm303323 Node: Modular Powering Algorithm303851 Node: Root Extraction Algorithms304633 Node: Square Root Algorithm304948 Node: Nth Root Algorithm307089 Node: Perfect Square Algorithm307874 Node: Perfect Power Algorithm309961 Node: Radix Conversion Algorithms310582 Node: Binary to Radix310958 Node: Radix to Binary314888 Node: Other Algorithms316976 Node: Prime Testing Algorithm317328 Node: Factorial Algorithm318512 Node: Binomial Coefficients Algorithm320902 Node: Fibonacci Numbers Algorithm321796 Node: Lucas Numbers Algorithm324270 Node: Random Number Algorithms324991 Node: Assembly Coding327113 Node: Assembly Code Organisation328073 Node: Assembly Basics329040 Node: Assembly Carry Propagation330190 Node: Assembly Cache Handling332021 Node: Assembly Functional Units334182 Node: Assembly Floating Point335795 Node: Assembly SIMD Instructions339573 Node: Assembly Software Pipelining340555 Node: Assembly Loop Unrolling341617 Node: Assembly Writing Guide343832 Node: Internals346597 Node: Integer Internals347109 Node: Rational Internals349365 Node: Float Internals350603 Node: Raw Output Internals358017 Node: C++ Interface Internals359211 Node: Contributors362497 Node: References368247 Node: GNU Free Documentation License374002 Node: Concept Index399171 Node: Function Index445060 a178 5  Local Variables: coding: iso-8859-1 End: @ 1.1.1.3 log @initial import of GMP 6.1.2. main changes from 5.1.3 below. notes: - support for thumb-less ARM chips was in our port of 5.1.3, but a similar method has been provided upstream now - someone should look at the AVX failure reports, and fix them Changes between GMP version 6.1.0 and 6.1.1 FEATURES * Work around faulty cpuid on some recent Intel chips (this allows GMP to run on Skylake Pentiums). * Support thumb-less ARM chips. Changes between GMP version 6.0.* and 6.1.0 BUGS FIXED * The public function mpn_com is now correctly declared in gmp.h. * Healed possible failures of mpn_sec_sqr for non-cryptographic sizes for some obsolete CPUs. * Various problems related to precision for mpf have been fixed. * Fixed ABI incompatible stack alignment in calls from assembly code. * Fixed PIC bug in popcount affecting Intel processors using the 32-bit ABI. SPEEDUPS * Speedup for Intel Broadwell and Skylake through assembly code making use of new ADX instructions. * Square root is now faster when the remainder is not needed. Also the speed to compute the k-th root improved, for small sizes. FEATURES * New C++ functions gcd and lcm for mpz_class. * New public mpn functions mpn_divexact_1, mpn_zero_p, and mpn_cnd_swap. * New public mpq_cmp_z function, to efficiently compare rationals with integers. * Support for more 32-bit arm processors. * Support for AVX-less modern x86 CPUs. (Such support might be missing either because the CPU vendor chose to disable AVX, or because the running kernel lacks AVX context switch support.) * Support for NetBSD under Xen; we switch off AVX unconditionally under NetBSD since a bug in NetBSD makes AVX fail under Xen. MISC * Tuned values for FFT multiplications are provided for larger number on many platforms. Changes between GMP version 5.1.* and 6.0.0 BUGS FIXED * The function mpz_invert now considers any number invertible in Z/1Z. * The mpn multiply code now handles operands of more than 2^31 limbs correctly. (Note however that the mpz code is limited to 2^32 bits on 32-bit hosts and 2^37 bits on 64-bit hosts.) SPEEDUPS * Plain division of large operands is faster and more monotonous in operand size. * Major speedup for ARM, in particular ARM Cortex-A15, thanks to improved assembly. * Speedup for Intel Sandy Bridge, Ivy Bridge, Haswell, thanks to rewritten and vastly expanded assembly support. Speedup also for the older Core 2 and Nehalem. * Faster mixed arithmetic between mpq_class and double. FEATURES * Support for new Intel and AMD CPUs. * New public functions mpn_sec_mul and mpn_sec_sqr, implementing side-channel silent multiplication and squaring. * New public functions mpn_sec_div_qr and mpn_sec_div_r, implementing side-channel silent division. * New public functions mpn_cnd_add_n and mpn_cnd_sub_n. Side-channel silent conditional addition and subtraction. * New public function mpn_sec_powm, implementing side-channel silent modexp. * New public function mpn_sec_invert, implementing side-channel silent modular inversion. * Better support for applications which use the mpz_t type, but nevertheless need to call some of the lower-level mpn functions. See the documentation for mpz_limbs_read and related functions. @ text @d1 2 a2 1 This is gmp.info, produced by makeinfo version 6.1 from gmp.texi. d5 1 a5 1 arithmetic library, version 6.1.2. d7 11 a17 1 Copyright 1991, 1993-2016 Free Software Foundation, Inc. a18 7 Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with the Front-Cover Texts being "A GNU Manual", and with the Back-Cover Texts being "You have freedom to copy and modify this GNU Manual, like GNU software". A copy of the license is included in *note GNU Free Documentation License::. d26 2 a27 2 gmp.info-1: 852 gmp.info-2: 302566 d31 146 a176 146 Node: Top852 Node: Copying2919 Node: Introduction to GMP5266 Node: Installing GMP7982 Node: Build Options8714 Node: ABI and ISA24423 Node: Notes for Package Builds34264 Node: Notes for Particular Systems37351 Node: Known Build Problems45101 Node: Performance optimization48633 Node: GMP Basics49762 Node: Headers and Libraries50410 Node: Nomenclature and Types51815 Node: Function Classes53811 Node: Variable Conventions55346 Node: Parameter Conventions56955 Node: Memory Management59011 Node: Reentrancy60139 Node: Useful Macros and Constants62007 Node: Compatibility with older versions62998 Node: Demonstration Programs63908 Node: Efficiency65767 Node: Debugging73381 Node: Profiling80401 Node: Autoconf84391 Node: Emacs86172 Node: Reporting Bugs86778 Node: Integer Functions89404 Node: Initializing Integers90180 Node: Assigning Integers92556 Node: Simultaneous Integer Init & Assign94167 Node: Converting Integers95814 Node: Integer Arithmetic98754 Node: Integer Division100490 Node: Integer Exponentiation107249 Node: Integer Roots108743 Node: Number Theoretic Functions110460 Node: Integer Comparisons117719 Node: Integer Logic and Bit Fiddling119157 Node: I/O of Integers121797 Node: Integer Random Numbers124788 Node: Integer Import and Export127409 Node: Miscellaneous Integer Functions131425 Node: Integer Special Functions133339 Node: Rational Number Functions137512 Node: Initializing Rationals138705 Node: Rational Conversions141178 Node: Rational Arithmetic142928 Node: Comparing Rationals144340 Node: Applying Integer Functions145811 Node: I/O of Rationals147330 Node: Floating-point Functions149387 Node: Initializing Floats152432 Node: Assigning Floats156524 Node: Simultaneous Float Init & Assign159112 Node: Converting Floats160662 Node: Float Arithmetic163927 Node: Float Comparison166080 Node: I/O of Floats167651 Node: Miscellaneous Float Functions170340 Node: Low-level Functions172342 Node: Random Number Functions206525 Node: Random State Initialization207593 Node: Random State Seeding210458 Node: Random State Miscellaneous211863 Node: Formatted Output212505 Node: Formatted Output Strings212750 Node: Formatted Output Functions218145 Node: C++ Formatted Output222209 Node: Formatted Input224909 Node: Formatted Input Strings225145 Node: Formatted Input Functions229805 Node: C++ Formatted Input232774 Node: C++ Class Interface234677 Node: C++ Interface General235628 Node: C++ Interface Integers238697 Node: C++ Interface Rationals242542 Node: C++ Interface Floats246566 Node: C++ Interface Random Numbers252583 Node: C++ Interface Limitations254983 Node: Custom Allocation258558 Node: Language Bindings262777 Node: Algorithms266351 Node: Multiplication Algorithms267051 Node: Basecase Multiplication268140 Node: Karatsuba Multiplication270048 Node: Toom 3-Way Multiplication273672 Node: Toom 4-Way Multiplication280091 Node: Higher degree Toom'n'half281470 Node: FFT Multiplication282762 Node: Other Multiplication288098 Node: Unbalanced Multiplication290572 Node: Division Algorithms291360 Node: Single Limb Division291739 Node: Basecase Division294627 Node: Divide and Conquer Division295830 Node: Block-Wise Barrett Division297898 Node: Exact Division298550 Node: Exact Remainder302566 Node: Small Quotient Division304816 Node: Greatest Common Divisor Algorithms306414 Node: Binary GCD306711 Node: Lehmer's Algorithm309561 Node: Subquadratic GCD311791 Node: Extended GCD314260 Node: Jacobi Symbol315578 Node: Powering Algorithms316593 Node: Normal Powering Algorithm316856 Node: Modular Powering Algorithm317384 Node: Root Extraction Algorithms318166 Node: Square Root Algorithm318481 Node: Nth Root Algorithm320622 Node: Perfect Square Algorithm321407 Node: Perfect Power Algorithm323494 Node: Radix Conversion Algorithms324115 Node: Binary to Radix324491 Node: Radix to Binary328112 Node: Other Algorithms330200 Node: Prime Testing Algorithm330552 Node: Factorial Algorithm331736 Node: Binomial Coefficients Algorithm334136 Node: Fibonacci Numbers Algorithm335030 Node: Lucas Numbers Algorithm337504 Node: Random Number Algorithms338225 Node: Assembly Coding340345 Node: Assembly Code Organisation341305 Node: Assembly Basics342272 Node: Assembly Carry Propagation343422 Node: Assembly Cache Handling345252 Node: Assembly Functional Units347413 Node: Assembly Floating Point349026 Node: Assembly SIMD Instructions352805 Node: Assembly Software Pipelining353787 Node: Assembly Loop Unrolling354850 Node: Assembly Writing Guide357065 Node: Internals359830 Node: Integer Internals360342 Node: Rational Internals362598 Node: Float Internals363836 Node: Raw Output Internals371236 Node: C++ Interface Internals372430 Node: Contributors375751 Node: References381886 Node: GNU Free Documentation License387636 Node: Concept Index412778 Node: Function Index460592 @ 1.1.1.4 log @initial import of GMP 6.2.0. changes include: - Bug fixes to gmp_snprintf, conversion to double, mpz_powm, and mpf_set_str. - New functions for factorial, primorial, fibonacci, mpz_2fac_ui, and mpz_mfac_uiui. - MIPS r6 cores are now supported. - Various speeds ups. @ text @d1 1 a1 1 This is gmp.info, produced by makeinfo version 6.6 from gmp.texi. d4 1 a4 1 arithmetic library, version 6.2.0. d6 1 a6 1 Copyright 1991, 1993-2016, 2018 Free Software Foundation, Inc. d22 2 a23 2 gmp.info-1: 858 gmp.info-2: 303730 d27 146 a172 146 Node: Top858 Node: Copying2931 Node: Introduction to GMP5278 Node: Installing GMP7994 Node: Build Options8726 Node: ABI and ISA24435 Node: Notes for Package Builds34276 Node: Notes for Particular Systems37363 Node: Known Build Problems45114 Node: Performance optimization48646 Node: GMP Basics49775 Node: Headers and Libraries50423 Node: Nomenclature and Types51828 Node: Function Classes53824 Node: Variable Conventions55359 Node: Parameter Conventions57599 Node: Memory Management59406 Node: Reentrancy60534 Node: Useful Macros and Constants62402 Node: Compatibility with older versions63393 Node: Demonstration Programs64303 Node: Efficiency66162 Node: Debugging73776 Node: Profiling80551 Node: Autoconf84542 Node: Emacs86323 Node: Reporting Bugs86929 Node: Integer Functions89555 Node: Initializing Integers90331 Node: Assigning Integers92707 Node: Simultaneous Integer Init & Assign94318 Node: Converting Integers95965 Node: Integer Arithmetic98905 Node: Integer Division100641 Node: Integer Exponentiation107400 Node: Integer Roots108897 Node: Number Theoretic Functions110614 Node: Integer Comparisons118109 Node: Integer Logic and Bit Fiddling119547 Node: I/O of Integers122187 Node: Integer Random Numbers125178 Node: Integer Import and Export127801 Node: Miscellaneous Integer Functions131817 Node: Integer Special Functions133731 Node: Rational Number Functions137904 Node: Initializing Rationals139097 Node: Rational Conversions141570 Node: Rational Arithmetic143592 Node: Comparing Rationals145004 Node: Applying Integer Functions146475 Node: I/O of Rationals147994 Node: Floating-point Functions150353 Node: Initializing Floats153398 Node: Assigning Floats157490 Node: Simultaneous Float Init & Assign160078 Node: Converting Floats161628 Node: Float Arithmetic164893 Node: Float Comparison167046 Node: I/O of Floats168617 Node: Miscellaneous Float Functions171306 Node: Low-level Functions173308 Node: Random Number Functions207556 Node: Random State Initialization208624 Node: Random State Seeding211489 Node: Random State Miscellaneous212894 Node: Formatted Output213536 Node: Formatted Output Strings213781 Node: Formatted Output Functions219176 Node: C++ Formatted Output223240 Node: Formatted Input225940 Node: Formatted Input Strings226176 Node: Formatted Input Functions230836 Node: C++ Formatted Input233805 Node: C++ Class Interface235708 Node: C++ Interface General236659 Node: C++ Interface Integers239728 Node: C++ Interface Rationals243961 Node: C++ Interface Floats247985 Node: C++ Interface Random Numbers254002 Node: C++ Interface Limitations256402 Node: Custom Allocation259977 Node: Language Bindings264196 Node: Algorithms267509 Node: Multiplication Algorithms268209 Node: Basecase Multiplication269298 Node: Karatsuba Multiplication271206 Node: Toom 3-Way Multiplication274830 Node: Toom 4-Way Multiplication281249 Node: Higher degree Toom'n'half282628 Node: FFT Multiplication283920 Node: Other Multiplication289256 Node: Unbalanced Multiplication291730 Node: Division Algorithms292518 Node: Single Limb Division292897 Node: Basecase Division295785 Node: Divide and Conquer Division296988 Node: Block-Wise Barrett Division299056 Node: Exact Division299708 Node: Exact Remainder303730 Node: Small Quotient Division305980 Node: Greatest Common Divisor Algorithms307578 Node: Binary GCD307875 Node: Lehmer's Algorithm310725 Node: Subquadratic GCD312955 Node: Extended GCD315424 Node: Jacobi Symbol316742 Node: Powering Algorithms318651 Node: Normal Powering Algorithm318914 Node: Modular Powering Algorithm319442 Node: Root Extraction Algorithms320224 Node: Square Root Algorithm320539 Node: Nth Root Algorithm322680 Node: Perfect Square Algorithm323465 Node: Perfect Power Algorithm325552 Node: Radix Conversion Algorithms326173 Node: Binary to Radix326549 Node: Radix to Binary330170 Node: Other Algorithms332258 Node: Prime Testing Algorithm332610 Node: Factorial Algorithm333794 Node: Binomial Coefficients Algorithm336194 Node: Fibonacci Numbers Algorithm337088 Node: Lucas Numbers Algorithm339562 Node: Random Number Algorithms340283 Node: Assembly Coding342403 Node: Assembly Code Organisation343363 Node: Assembly Basics344330 Node: Assembly Carry Propagation345480 Node: Assembly Cache Handling347310 Node: Assembly Functional Units349471 Node: Assembly Floating Point351084 Node: Assembly SIMD Instructions354863 Node: Assembly Software Pipelining355845 Node: Assembly Loop Unrolling356908 Node: Assembly Writing Guide359123 Node: Internals361888 Node: Integer Internals362400 Node: Rational Internals364864 Node: Float Internals366102 Node: Raw Output Internals373502 Node: C++ Interface Internals374696 Node: Contributors378017 Node: References384248 Node: GNU Free Documentation License390167 Node: Concept Index415309 Node: Function Index463123 @ 1.1.1.5 log @initial import of GMP 6.2.1. from their NEWS: Changes between GMP version 6.2.0 and 6.2.1 BUGS FIXED * A possible overflow of type int is avoided for mpz_cmp on huge operands. * Overflows are more carefully detected and reported for mpz_pow_ui. * A bug in longlong.h for aarch64 sub_ddmmss, not affecting GMP, was healed. FEATURES * C90 compliance. * Initial support for Darwin on arm64, and improved portability. * Support for more processors. @ text @d1 1 a1 1 This is gmp.info, produced by makeinfo version 6.7 from gmp.texi. d4 1 a4 1 arithmetic library, version 6.2.1. d6 1 a6 1 Copyright 1991, 1993-2016, 2018-2020 Free Software Foundation, Inc. d22 2 a23 2 gmp.info-1: 863 gmp.info-2: 303737 d27 146 a172 146 Node: Top863 Node: Copying2941 Node: Introduction to GMP5288 Node: Installing GMP8004 Node: Build Options8736 Node: ABI and ISA24445 Node: Notes for Package Builds34286 Node: Notes for Particular Systems37373 Node: Known Build Problems45124 Node: Performance optimization48656 Node: GMP Basics49785 Node: Headers and Libraries50433 Node: Nomenclature and Types51838 Node: Function Classes53834 Node: Variable Conventions55369 Node: Parameter Conventions57609 Node: Memory Management59416 Node: Reentrancy60544 Node: Useful Macros and Constants62412 Node: Compatibility with older versions63403 Node: Demonstration Programs64313 Node: Efficiency66172 Node: Debugging73778 Node: Profiling80553 Node: Autoconf84544 Node: Emacs86325 Node: Reporting Bugs86931 Node: Integer Functions89557 Node: Initializing Integers90333 Node: Assigning Integers92709 Node: Simultaneous Integer Init & Assign94320 Node: Converting Integers95967 Node: Integer Arithmetic98907 Node: Integer Division100643 Node: Integer Exponentiation107402 Node: Integer Roots108899 Node: Number Theoretic Functions110616 Node: Integer Comparisons118111 Node: Integer Logic and Bit Fiddling119549 Node: I/O of Integers122189 Node: Integer Random Numbers125180 Node: Integer Import and Export127803 Node: Miscellaneous Integer Functions131819 Node: Integer Special Functions133733 Node: Rational Number Functions137906 Node: Initializing Rationals139099 Node: Rational Conversions141572 Node: Rational Arithmetic143594 Node: Comparing Rationals145006 Node: Applying Integer Functions146477 Node: I/O of Rationals147996 Node: Floating-point Functions150355 Node: Initializing Floats153400 Node: Assigning Floats157492 Node: Simultaneous Float Init & Assign160080 Node: Converting Floats161630 Node: Float Arithmetic164895 Node: Float Comparison167048 Node: I/O of Floats168619 Node: Miscellaneous Float Functions171308 Node: Low-level Functions173310 Node: Random Number Functions207558 Node: Random State Initialization208626 Node: Random State Seeding211491 Node: Random State Miscellaneous212896 Node: Formatted Output213538 Node: Formatted Output Strings213783 Node: Formatted Output Functions219178 Node: C++ Formatted Output223242 Node: Formatted Input225942 Node: Formatted Input Strings226178 Node: Formatted Input Functions230838 Node: C++ Formatted Input233807 Node: C++ Class Interface235710 Node: C++ Interface General236661 Node: C++ Interface Integers239730 Node: C++ Interface Rationals243963 Node: C++ Interface Floats247987 Node: C++ Interface Random Numbers254004 Node: C++ Interface Limitations256404 Node: Custom Allocation259979 Node: Language Bindings264198 Node: Algorithms267511 Node: Multiplication Algorithms268211 Node: Basecase Multiplication269300 Node: Karatsuba Multiplication271208 Node: Toom 3-Way Multiplication274832 Node: Toom 4-Way Multiplication281251 Node: Higher degree Toom'n'half282630 Node: FFT Multiplication283922 Node: Other Multiplication289258 Node: Unbalanced Multiplication291732 Node: Division Algorithms292520 Node: Single Limb Division292899 Node: Basecase Division295787 Node: Divide and Conquer Division296990 Node: Block-Wise Barrett Division299058 Node: Exact Division299710 Node: Exact Remainder303737 Node: Small Quotient Division305987 Node: Greatest Common Divisor Algorithms307585 Node: Binary GCD307882 Node: Lehmer's Algorithm310732 Node: Subquadratic GCD312962 Node: Extended GCD315431 Node: Jacobi Symbol316749 Node: Powering Algorithms318658 Node: Normal Powering Algorithm318921 Node: Modular Powering Algorithm319449 Node: Root Extraction Algorithms320231 Node: Square Root Algorithm320546 Node: Nth Root Algorithm322687 Node: Perfect Square Algorithm323472 Node: Perfect Power Algorithm325559 Node: Radix Conversion Algorithms326180 Node: Binary to Radix326556 Node: Radix to Binary330177 Node: Other Algorithms332265 Node: Prime Testing Algorithm332617 Node: Factorial Algorithm333801 Node: Binomial Coefficients Algorithm336201 Node: Fibonacci Numbers Algorithm337095 Node: Lucas Numbers Algorithm339569 Node: Random Number Algorithms340290 Node: Assembly Coding342410 Node: Assembly Code Organisation343370 Node: Assembly Basics344337 Node: Assembly Carry Propagation345487 Node: Assembly Cache Handling347317 Node: Assembly Functional Units349478 Node: Assembly Floating Point351091 Node: Assembly SIMD Instructions354870 Node: Assembly Software Pipelining355852 Node: Assembly Loop Unrolling356915 Node: Assembly Writing Guide359130 Node: Internals361895 Node: Integer Internals362407 Node: Rational Internals364871 Node: Float Internals366109 Node: Raw Output Internals373509 Node: C++ Interface Internals374703 Node: Contributors378024 Node: References384255 Node: GNU Free Documentation License390174 Node: Concept Index415316 Node: Function Index463130 @