Update documentation regarding stdint.h and _ux, _sx functions.
This commit is contained in:
parent
e86ac62d26
commit
dd5c05a984
284
doc/mpir.info
284
doc/mpir.info
@ -24,7 +24,7 @@ END-INFO-DIR-ENTRY
|
||||
|
||||
Indirect:
|
||||
mpir.info-1: 1042
|
||||
mpir.info-2: 301132
|
||||
mpir.info-2: 301176
|
||||
|
||||
Tag Table:
|
||||
(Indirect)
|
||||
@ -32,146 +32,146 @@ Node: Top1042
|
||||
Node: Copying3275
|
||||
Node: Introduction to MPIR4995
|
||||
Node: Installing MPIR7165
|
||||
Node: Build Options8646
|
||||
Node: ABI and ISA25180
|
||||
Node: Notes for Package Builds31958
|
||||
Node: Building with Microsoft Visual Studio35405
|
||||
Node: Notes for Particular Systems40536
|
||||
Node: Known Build Problems46277
|
||||
Node: Performance optimization48272
|
||||
Node: MPIR Basics49408
|
||||
Node: Headers and Libraries50059
|
||||
Node: Nomenclature and Types51514
|
||||
Node: MPIR on Windows x6453435
|
||||
Node: Function Classes55360
|
||||
Node: Variable Conventions56896
|
||||
Node: Parameter Conventions58425
|
||||
Node: Memory Management60478
|
||||
Node: Reentrancy61610
|
||||
Node: Useful Macros and Constants63046
|
||||
Node: Compatibility with older versions64376
|
||||
Node: Efficiency65507
|
||||
Node: Debugging73176
|
||||
Node: Profiling79572
|
||||
Node: Autoconf83605
|
||||
Node: Emacs85479
|
||||
Node: Reporting Bugs86088
|
||||
Node: Integer Functions88654
|
||||
Node: Initializing Integers89433
|
||||
Node: Assigning Integers91367
|
||||
Node: Simultaneous Integer Init & Assign93147
|
||||
Node: Converting Integers94976
|
||||
Node: Integer Arithmetic98569
|
||||
Node: Integer Division100035
|
||||
Node: Integer Exponentiation105947
|
||||
Node: Integer Roots106770
|
||||
Node: Number Theoretic Functions108553
|
||||
Node: Integer Comparisons117894
|
||||
Node: Integer Logic and Bit Fiddling119245
|
||||
Node: I/O of Integers121800
|
||||
Node: Integer Random Numbers124687
|
||||
Node: Integer Import and Export126451
|
||||
Node: Miscellaneous Integer Functions130437
|
||||
Node: Integer Special Functions132283
|
||||
Node: Rational Number Functions135455
|
||||
Node: Initializing Rationals136650
|
||||
Node: Rational Conversions139100
|
||||
Node: Rational Arithmetic140832
|
||||
Node: Comparing Rationals142137
|
||||
Node: Applying Integer Functions143454
|
||||
Node: I/O of Rationals144938
|
||||
Node: Floating-point Functions146800
|
||||
Node: Initializing Floats149691
|
||||
Node: Assigning Floats153778
|
||||
Node: Simultaneous Float Init & Assign156325
|
||||
Node: Converting Floats157837
|
||||
Node: Float Arithmetic161036
|
||||
Node: Float Comparison162900
|
||||
Node: I/O of Floats164228
|
||||
Node: Miscellaneous Float Functions166799
|
||||
Node: Low-level Functions169432
|
||||
Node: Random Number Functions194824
|
||||
Node: Random State Initialization195894
|
||||
Node: Random State Seeding197947
|
||||
Node: Random State Miscellaneous199317
|
||||
Node: Formatted Output199909
|
||||
Node: Formatted Output Strings200155
|
||||
Node: Formatted Output Functions205396
|
||||
Node: C++ Formatted Output209462
|
||||
Node: Formatted Input212149
|
||||
Node: Formatted Input Strings212386
|
||||
Node: Formatted Input Functions217055
|
||||
Node: C++ Formatted Input220028
|
||||
Node: C++ Class Interface221936
|
||||
Node: C++ Interface General222934
|
||||
Node: C++ Interface Integers226014
|
||||
Node: C++ Interface Rationals229701
|
||||
Node: C++ Interface Floats233730
|
||||
Node: C++ Interface Random Numbers239262
|
||||
Node: C++ Interface Limitations241369
|
||||
Node: Custom Allocation244210
|
||||
Node: Language Bindings248862
|
||||
Node: Algorithms252870
|
||||
Node: Multiplication Algorithms253575
|
||||
Node: Basecase Multiplication254787
|
||||
Node: Karatsuba Multiplication256699
|
||||
Node: Toom 3-Way Multiplication260329
|
||||
Node: Toom 4-Way Multiplication266746
|
||||
Node: FFT Multiplication268120
|
||||
Node: Other Multiplication273549
|
||||
Node: Unbalanced Multiplication276234
|
||||
Node: Division Algorithms277132
|
||||
Node: Single Limb Division277480
|
||||
Node: Basecase Division280399
|
||||
Node: Divide and Conquer Division281602
|
||||
Node: Exact Division283873
|
||||
Node: Exact Remainder287072
|
||||
Node: Small Quotient Division289365
|
||||
Node: Greatest Common Divisor Algorithms290964
|
||||
Node: Binary GCD291256
|
||||
Node: Lehmer's GCD293932
|
||||
Node: Subquadratic GCD296147
|
||||
Node: Extended GCD298612
|
||||
Node: Jacobi Symbol299172
|
||||
Node: Powering Algorithms301132
|
||||
Node: Normal Powering Algorithm301396
|
||||
Node: Modular Powering Algorithm301925
|
||||
Node: Root Extraction Algorithms302989
|
||||
Node: Square Root Algorithm303305
|
||||
Node: Nth Root Algorithm305448
|
||||
Node: Perfect Square Algorithm306234
|
||||
Node: Perfect Power Algorithm308321
|
||||
Node: Radix Conversion Algorithms308943
|
||||
Node: Binary to Radix309320
|
||||
Node: Radix to Binary313251
|
||||
Node: Other Algorithms315216
|
||||
Node: Prime Testing Algorithm315570
|
||||
Node: Factorial Algorithm316797
|
||||
Node: Binomial Coefficients Algorithm318238
|
||||
Node: Fibonacci Numbers Algorithm319133
|
||||
Node: Lucas Numbers Algorithm321609
|
||||
Node: Random Number Algorithms322331
|
||||
Node: Assembler Coding324455
|
||||
Node: Assembler Code Organisation325432
|
||||
Node: Assembler Basics326405
|
||||
Node: Assembler Carry Propagation327564
|
||||
Node: Assembler Cache Handling329401
|
||||
Node: Assembler Functional Units331569
|
||||
Node: Assembler Floating Point333190
|
||||
Node: Assembler SIMD Instructions336974
|
||||
Node: Assembler Software Pipelining337963
|
||||
Node: Assembler Loop Unrolling339032
|
||||
Node: Assembler Writing Guide341252
|
||||
Node: Internals344022
|
||||
Node: Integer Internals344536
|
||||
Node: Rational Internals346793
|
||||
Node: Float Internals348033
|
||||
Node: Raw Output Internals355347
|
||||
Node: C++ Interface Internals356542
|
||||
Node: Contributors359829
|
||||
Node: References368837
|
||||
Node: GNU Free Documentation License376596
|
||||
Node: Concept Index401747
|
||||
Node: Function Index447146
|
||||
Node: Build Options8648
|
||||
Node: ABI and ISA25184
|
||||
Node: Notes for Package Builds31962
|
||||
Node: Building with Microsoft Visual Studio35409
|
||||
Node: Notes for Particular Systems40540
|
||||
Node: Known Build Problems46281
|
||||
Node: Performance optimization48276
|
||||
Node: MPIR Basics49412
|
||||
Node: Headers and Libraries50063
|
||||
Node: Nomenclature and Types51518
|
||||
Node: MPIR on Windows x6453439
|
||||
Node: Function Classes55364
|
||||
Node: Variable Conventions56900
|
||||
Node: Parameter Conventions58429
|
||||
Node: Memory Management60482
|
||||
Node: Reentrancy61614
|
||||
Node: Useful Macros and Constants63050
|
||||
Node: Compatibility with older versions64380
|
||||
Node: Efficiency65511
|
||||
Node: Debugging73180
|
||||
Node: Profiling79576
|
||||
Node: Autoconf83609
|
||||
Node: Emacs85483
|
||||
Node: Reporting Bugs86092
|
||||
Node: Integer Functions88658
|
||||
Node: Initializing Integers89437
|
||||
Node: Assigning Integers91371
|
||||
Node: Simultaneous Integer Init & Assign93171
|
||||
Node: Converting Integers95015
|
||||
Node: Integer Arithmetic98613
|
||||
Node: Integer Division100079
|
||||
Node: Integer Exponentiation105991
|
||||
Node: Integer Roots106814
|
||||
Node: Number Theoretic Functions108597
|
||||
Node: Integer Comparisons117938
|
||||
Node: Integer Logic and Bit Fiddling119289
|
||||
Node: I/O of Integers121844
|
||||
Node: Integer Random Numbers124731
|
||||
Node: Integer Import and Export126495
|
||||
Node: Miscellaneous Integer Functions130481
|
||||
Node: Integer Special Functions132327
|
||||
Node: Rational Number Functions135499
|
||||
Node: Initializing Rationals136694
|
||||
Node: Rational Conversions139144
|
||||
Node: Rational Arithmetic140876
|
||||
Node: Comparing Rationals142181
|
||||
Node: Applying Integer Functions143498
|
||||
Node: I/O of Rationals144982
|
||||
Node: Floating-point Functions146844
|
||||
Node: Initializing Floats149735
|
||||
Node: Assigning Floats153822
|
||||
Node: Simultaneous Float Init & Assign156369
|
||||
Node: Converting Floats157881
|
||||
Node: Float Arithmetic161080
|
||||
Node: Float Comparison162944
|
||||
Node: I/O of Floats164272
|
||||
Node: Miscellaneous Float Functions166843
|
||||
Node: Low-level Functions169476
|
||||
Node: Random Number Functions194868
|
||||
Node: Random State Initialization195938
|
||||
Node: Random State Seeding197991
|
||||
Node: Random State Miscellaneous199361
|
||||
Node: Formatted Output199953
|
||||
Node: Formatted Output Strings200199
|
||||
Node: Formatted Output Functions205440
|
||||
Node: C++ Formatted Output209506
|
||||
Node: Formatted Input212193
|
||||
Node: Formatted Input Strings212430
|
||||
Node: Formatted Input Functions217099
|
||||
Node: C++ Formatted Input220072
|
||||
Node: C++ Class Interface221980
|
||||
Node: C++ Interface General222978
|
||||
Node: C++ Interface Integers226058
|
||||
Node: C++ Interface Rationals229745
|
||||
Node: C++ Interface Floats233774
|
||||
Node: C++ Interface Random Numbers239306
|
||||
Node: C++ Interface Limitations241413
|
||||
Node: Custom Allocation244254
|
||||
Node: Language Bindings248906
|
||||
Node: Algorithms252914
|
||||
Node: Multiplication Algorithms253619
|
||||
Node: Basecase Multiplication254831
|
||||
Node: Karatsuba Multiplication256743
|
||||
Node: Toom 3-Way Multiplication260373
|
||||
Node: Toom 4-Way Multiplication266790
|
||||
Node: FFT Multiplication268164
|
||||
Node: Other Multiplication273593
|
||||
Node: Unbalanced Multiplication276278
|
||||
Node: Division Algorithms277176
|
||||
Node: Single Limb Division277524
|
||||
Node: Basecase Division280443
|
||||
Node: Divide and Conquer Division281646
|
||||
Node: Exact Division283917
|
||||
Node: Exact Remainder287116
|
||||
Node: Small Quotient Division289409
|
||||
Node: Greatest Common Divisor Algorithms291008
|
||||
Node: Binary GCD291300
|
||||
Node: Lehmer's GCD293976
|
||||
Node: Subquadratic GCD296191
|
||||
Node: Extended GCD298656
|
||||
Node: Jacobi Symbol299216
|
||||
Node: Powering Algorithms301176
|
||||
Node: Normal Powering Algorithm301440
|
||||
Node: Modular Powering Algorithm301969
|
||||
Node: Root Extraction Algorithms303033
|
||||
Node: Square Root Algorithm303349
|
||||
Node: Nth Root Algorithm305492
|
||||
Node: Perfect Square Algorithm306278
|
||||
Node: Perfect Power Algorithm308365
|
||||
Node: Radix Conversion Algorithms308987
|
||||
Node: Binary to Radix309364
|
||||
Node: Radix to Binary313295
|
||||
Node: Other Algorithms315260
|
||||
Node: Prime Testing Algorithm315614
|
||||
Node: Factorial Algorithm316841
|
||||
Node: Binomial Coefficients Algorithm318282
|
||||
Node: Fibonacci Numbers Algorithm319177
|
||||
Node: Lucas Numbers Algorithm321653
|
||||
Node: Random Number Algorithms322375
|
||||
Node: Assembler Coding324499
|
||||
Node: Assembler Code Organisation325476
|
||||
Node: Assembler Basics326449
|
||||
Node: Assembler Carry Propagation327608
|
||||
Node: Assembler Cache Handling329445
|
||||
Node: Assembler Functional Units331613
|
||||
Node: Assembler Floating Point333234
|
||||
Node: Assembler SIMD Instructions337018
|
||||
Node: Assembler Software Pipelining338007
|
||||
Node: Assembler Loop Unrolling339076
|
||||
Node: Assembler Writing Guide341296
|
||||
Node: Internals344066
|
||||
Node: Integer Internals344580
|
||||
Node: Rational Internals346837
|
||||
Node: Float Internals348077
|
||||
Node: Raw Output Internals355391
|
||||
Node: C++ Interface Internals356586
|
||||
Node: Contributors359873
|
||||
Node: References368881
|
||||
Node: GNU Free Documentation License376640
|
||||
Node: Concept Index401791
|
||||
Node: Function Index447190
|
||||
|
||||
End Tag Table
|
||||
|
@ -182,7 +182,7 @@ And you can install (under '/usr/local' by default) with
|
||||
make install
|
||||
|
||||
Important note: by default MPIR produces libraries named libmpir,
|
||||
etc., and the header file mpir.h. If you wish to have MPIR to build a
|
||||
etc., and the header file 'mpir.h'. If you wish to have MPIR to build a
|
||||
library named libgmp as well, etc., and a gmp.h header file, so that you
|
||||
can use mpir with programs designed to only work with GMP, then use the
|
||||
'--enable-gmpcompat' option when invoking configure:
|
||||
@ -261,7 +261,7 @@ Build Directory
|
||||
|
||||
'--enable-gmpcompat'
|
||||
By default make builds libmpir library files (and libmpirxx if C++
|
||||
headers are requested) and the mpir.h header file. This option
|
||||
headers are requested) and the 'mpir.h' header file. This option
|
||||
allows you to specify that you want additional libraries created
|
||||
called libgmp (and libgmpxx), etc., for libraries and gmp.h for
|
||||
compatibility with GMP (except for GMP secure cryptograhic
|
||||
@ -2214,7 +2214,8 @@ Initializing Integers::).
|
||||
-- Function: void mpz_set_q (mpz_t ROP, mpq_t OP)
|
||||
-- Function: void mpz_set_f (mpz_t ROP, mpf_t OP)
|
||||
Set the value of ROP from OP. Note the intmax versions are only
|
||||
available if you have stdint.h header file on your system.
|
||||
available if you include the 'stdint.h' header before including
|
||||
'mpir.h'.
|
||||
|
||||
'mpz_set_d', 'mpz_set_q' and 'mpz_set_f' truncate OP to make it an
|
||||
integer.
|
||||
@ -2271,8 +2272,8 @@ a variable already initialized!
|
||||
-- Function: void mpz_init_set_sx (mpz_t ROP, intmax_t OP)
|
||||
-- Function: void mpz_init_set_d (mpz_t ROP, double OP)
|
||||
Initialize ROP with limb space and set the initial numeric value
|
||||
from OP. Note the intmax versions are only available if you have
|
||||
stdint.h header file on your system.
|
||||
from OP. Note the intmax versions are only available if you
|
||||
include the 'stdint.h' header before including 'mpir.h'.
|
||||
|
||||
-- Function: int mpz_init_set_str (mpz_t ROP, char *STR, int BASE)
|
||||
Initialize ROP and set its value like 'mpz_set_str' (see its
|
||||
@ -2312,16 +2313,16 @@ described in *note Assigning Integers:: and *note I/O of Integers::.
|
||||
|
||||
If OP is too big to fit an 'uintmax_t' then just the least
|
||||
significant bits that do fit are returned. The sign of OP is
|
||||
ignored, only the absolute value is used. Note the intmax versions
|
||||
are only available if you have stdint.h header file on your system.
|
||||
ignored, only the absolute value is used. Note this function is
|
||||
only available if you include 'stdint.h' before including 'mpir.h'.
|
||||
|
||||
-- Function: intmax_t mpz_get_sx (mpz_t OP)
|
||||
If OP fits into a 'intmax_t' return the value of OP. Otherwise
|
||||
return the least significant part of OP, with the same sign as OP.
|
||||
|
||||
If OP is too big to fit in a 'intmax_t', the returned result is
|
||||
probably not very useful. Note the intmax versions are only
|
||||
available if you have stdint.h header file on your system.
|
||||
probably not very useful. Note this function is only available if
|
||||
you include the 'stdint.h' header before including 'mpir.h'.
|
||||
|
||||
-- Function: double mpz_get_d (mpz_t OP)
|
||||
Convert OP to a 'double', truncating if necessary (ie. rounding
|
||||
|
@ -3574,7 +3574,7 @@ Function and Type Index
|
||||
* mpz_set_si: MPIR on Windows x64. (line 21)
|
||||
* mpz_set_si <1>: MPIR on Windows x64. (line 46)
|
||||
* mpz_set_si <2>: Assigning Integers. (line 11)
|
||||
* mpz_set_str: Assigning Integers. (line 23)
|
||||
* mpz_set_str: Assigning Integers. (line 24)
|
||||
* mpz_set_sx: Assigning Integers. (line 13)
|
||||
* mpz_set_ui: MPIR on Windows x64. (line 19)
|
||||
* mpz_set_ui <1>: MPIR on Windows x64. (line 44)
|
||||
@ -3593,7 +3593,7 @@ Function and Type Index
|
||||
* mpz_submul: Integer Arithmetic. (line 24)
|
||||
* mpz_submul_ui: Integer Arithmetic. (line 25)
|
||||
* mpz_sub_ui: Integer Arithmetic. (line 11)
|
||||
* mpz_swap: Assigning Integers. (line 39)
|
||||
* mpz_swap: Assigning Integers. (line 40)
|
||||
* 'mpz_t': Nomenclature and Types.
|
||||
(line 6)
|
||||
* mpz_tdiv_q: Integer Division. (line 38)
|
||||
|
@ -545,7 +545,7 @@ make install
|
||||
@end example
|
||||
|
||||
Important note: by default MPIR produces libraries named libmpir, etc., and the header file
|
||||
mpir.h. If you wish to have MPIR to build a library named libgmp as well, etc., and a
|
||||
@file{mpir.h}. If you wish to have MPIR to build a library named libgmp as well, etc., and a
|
||||
gmp.h header file, so that you can use mpir with programs designed to only work with GMP,
|
||||
then use the @samp{--enable-gmpcompat} option when invoking configure:
|
||||
|
||||
@ -629,7 +629,7 @@ it will be necessary to ensure both @file{$prefix/include} and
|
||||
|
||||
@item @option{--enable-gmpcompat}
|
||||
@cindex @code{--enable-gmpcompat}
|
||||
By default make builds libmpir library files (and libmpirxx if C++ headers are requested) and the mpir.h header file. This option allows you to specify that you want additional libraries created called libgmp (and libgmpxx), etc., for libraries and gmp.h for compatibility with GMP (except for GMP secure cryptograhic functions, which are not available in MPIR).
|
||||
By default make builds libmpir library files (and libmpirxx if C++ headers are requested) and the @file{mpir.h} header file. This option allows you to specify that you want additional libraries created called libgmp (and libgmpxx), etc., for libraries and gmp.h for compatibility with GMP (except for GMP secure cryptograhic functions, which are not available in MPIR).
|
||||
|
||||
@item @option{--disable-shared}, @option{--disable-static}
|
||||
@cindex @code{--disable-shared}
|
||||
@ -2947,7 +2947,7 @@ These functions assign new values to already initialized integers
|
||||
@deftypefunx void mpz_set_q (mpz_t @var{rop}, mpq_t @var{op})
|
||||
@deftypefunx void mpz_set_f (mpz_t @var{rop}, mpf_t @var{op})
|
||||
Set the value of @var{rop} from @var{op}. Note the intmax versions are only available
|
||||
if you have stdint.h header file on your system.
|
||||
if you include the @file{stdint.h} header before including @file{mpir.h}.
|
||||
|
||||
@code{mpz_set_d}, @code{mpz_set_q} and @code{mpz_set_f} truncate @var{op} to
|
||||
make it an integer.
|
||||
@ -3020,7 +3020,7 @@ already initialized!
|
||||
@deftypefunx void mpz_init_set_d (mpz_t @var{rop}, double @var{op})
|
||||
Initialize @var{rop} with limb space and set the initial numeric value from
|
||||
@var{op}. Note the intmax versions are only available
|
||||
if you have stdint.h header file on your system.
|
||||
if you include the @file{stdint.h} header before including @file{mpir.h}.
|
||||
@end deftypefun
|
||||
|
||||
@deftypefun int mpz_init_set_str (mpz_t @var{rop}, char *@var{str}, int @var{base})
|
||||
@ -3066,8 +3066,8 @@ Return the value of @var{op} as an @code{uintmax_t}.
|
||||
|
||||
If @var{op} is too big to fit an @code{uintmax_t} then just the least
|
||||
significant bits that do fit are returned. The sign of @var{op} is ignored,
|
||||
only the absolute value is used. Note the intmax versions are only available
|
||||
if you have stdint.h header file on your system.
|
||||
only the absolute value is used. Note this function is only available if you
|
||||
include @file{stdint.h} before including @file{mpir.h}.
|
||||
@end deftypefun
|
||||
|
||||
@deftypefun {intmax_t} mpz_get_sx (mpz_t @var{op})
|
||||
@ -3076,8 +3076,8 @@ Otherwise return the least significant part of @var{op}, with the same sign
|
||||
as @var{op}.
|
||||
|
||||
If @var{op} is too big to fit in a @code{intmax_t}, the returned
|
||||
result is probably not very useful. Note the intmax versions are only available
|
||||
if you have stdint.h header file on your system.
|
||||
result is probably not very useful. Note this function is only available if you
|
||||
include the @file{stdint.h} header before including @file{mpir.h}.
|
||||
@end deftypefun
|
||||
|
||||
@deftypefun double mpz_get_d (mpz_t @var{op})
|
||||
|
@ -1,4 +1,4 @@
|
||||
@set UPDATED 09 June 2015
|
||||
@set UPDATED 11 June 2015
|
||||
@set UPDATED-MONTH June 2015
|
||||
@set EDITION 2.7.0
|
||||
@set VERSION 2.7.0
|
||||
|
Loading…
Reference in New Issue
Block a user