summaryrefslogtreecommitdiffstats
path: root/Modules/_decimal/libmpdec
Commit message (Collapse)AuthorAgeFilesLines
* bpo-41369: Finish updating the vendored libmpdec to version 2.5.1 (GH-24962)Antoine Pitrou2021-03-3023-114/+1965
| | | | | Complete the update to libmpdec-2.5.1. Co-authored-by: Stefan Krah <skrah@bytereef.org>
* bpo-40878: xlc cannot handle C99 extern inline. (GH-21887)Stefan Krah2020-08-151-1/+1
| | | This applies to the default "extc99" mode. Python does not compile with "stdc99".
* bpo-41369 Update to libmpdec-2.5.1: new features (GH-21593)Stefan Krah2020-07-222-0/+377
|
* bpo-41302: Fix build with system libmpdec (GH-21481)Felix Yan2020-07-151-6/+0
| | | | | | | Move definition of UNUSED from modified headers of libmpdec to _decimal.c itself. This makes the vendored source closer to the standalone library and fixes build with --with-system-libmpdec. Tested to build fine with either system libmpdec or the vendored one.
* bpo-41100: fix _decimal for arm64 Mac OS (GH-21228)Lawrence D'Anna2020-06-301-0/+3
| | | Patch by Lawrence Danna.
* bpo-40874: Update to libmpdec-2.5.0 (GH-20652)Stefan Krah2020-06-0538-296/+502
|
* bpo-39576: Prevent memory error for overly optimistic precisions (GH-18581)Stefan Krah2020-02-211-3/+74
|
* Rename memory.c to mpalloc.c for consistency with the header file. (#14687)Stefan Krah2019-07-102-1/+1
|
* Really remove vcstdint.h. (#14686)Stefan Krah2019-07-103-234/+1
|
* bpo-35059, libmpdec: Add missing EXTINLINE in mpdecimal.h (GH-10128)Victor Stinner2018-10-261-5/+5
| | | | | | | | | | | | | Declare functions with EXTINLINE: * mpd_del() * mpd_uint_zero() * mpd_qresize() * mpd_qresize_zero() * mpd_minalloc() These functions are implemented with "inline" or "ALWAYS_INLINE", but declared without inline which cause linker error on Visual Studio in Debug mode when using /Ob1.
* Fix some warnings produced by different compilers. (#5593)Serhiy Storchaka2018-02-091-0/+6
|
* bpo-30923: Disable warning that has been part of -Wextra since gcc-7.0. (#3142)Stefan Krah2017-08-181-0/+6
|
* Fix some warnings from MSVCSteve Dower2016-09-071-4/+0
|
* include (now) int standard headersBenjamin Peterson2016-09-061-6/+2
|
* do not need vcstdint.h anymoreBenjamin Peterson2016-09-061-1/+0
|
* Issue #26846: Workaround for non-standard stdlib.h on Android.Stefan Krah2016-04-255-6/+4
|
* Issue #26621: Update libmpdec version and remove unnecessary test case.Stefan Krah2016-03-231-2/+2
|
* Issue #26139: libmpdec: disable /W4 warning (non-standard dllimport behavior).Stefan Krah2016-01-171-0/+5
|
* Issue #24974: Force fp-model precice in mpdecimal.c on WindowsZachary Ware2015-09-031-0/+1
| | | | As suggested by Steve Dower and approved by Stefan Krah.
* Introduce and check for MPD_VERSION_HEX for precise management of buildsStefan Krah2014-08-261-2/+6
| | | | with an external libmpdec.
* Issue #22090: Fix '%' formatting for infinities and NaNs.Stefan Krah2014-08-261-4/+7
|
* Whitespace.Stefan Krah2014-01-041-3/+3
|
* Issue #19986: Avoid an incorrect warning of older gcc versions.Stefan Krah2013-12-151-3/+4
|
* Fix C++ header usage. This __STDC_LIMIT_MACROS scheme can still be subvertedStefan Krah2013-12-141-9/+11
| | | | | by including stdint.h before mpdecimal.h. In that case the only option left is to compile with -D_STDC_LIMIT_MACROS.
* Do not discard const qualifier without a reason.Stefan Krah2013-12-121-7/+7
|
* Fix two typos.Stefan Krah2013-12-082-2/+2
|
* Missed one copyright.Stefan Krah2013-12-081-1/+1
|
* Update copyright. The four year increment is intentional (to save work).Stefan Krah2013-12-0833-33/+33
|
* Make a couple of parameters constant.Stefan Krah2013-12-032-14/+14
|
* 1) Prepare libmpdec for the 2.4.0 release. None of the following changes ↵Stefan Krah2013-11-242-35/+319
| | | | | | | | | | | | | | | | | | affects _decimal: o Make all "mpd_t to C integer" conversion functions available in both the 64-bit and the 32-bit versions. o Make all mixed mpd_t/C integer arithmetic functions available in the 32-bit version. o Better handling of __STDC_LIMIT_MACROS for C++ users. o Add struct tags (at the request of C++ users). 2) Check for libmpdec.so.2 if --with-system-libmpdec is used.
* Fix a few typos and a double semicolon. Patch by Eitan Adler.Ezio Melotti2013-01-271-1/+1
|
* Remove trailing whitespace.Stefan Krah2013-01-1610-22/+22
|
* Issue #16753: Define __GNUC_STDC_INLINE__ to an integer (same as gcc).Stefan Krah2012-12-231-1/+1
|
* Issue #16745: The gcc visibility pragma is buggy on OpenIndiana and NetBSD.Stefan Krah2012-12-221-1/+2
|
* Fix Visual Studio build.Stefan Krah2012-12-221-0/+3
|
* Issue #16745: Hide symbols in _decimal.so.Stefan Krah2012-12-2212-1/+95
|
* Issue #16745: Hide a couple of symbols by making them local.Stefan Krah2012-12-211-7/+7
|
* Support gcc's -ansi flag: use "__asm__" instead of "asm".Stefan Krah2012-09-302-94/+94
|
* Revert 29506c7db353 (build output should be accurate).Stefan Krah2012-09-301-5/+0
|
* Change libmpdec to use ANSI code in strict ansi mode as inline asm isn't ↵Christian Heimes2012-09-301-0/+5
| | | | supported in ANSI C
* Use C-style comments.Stefan Krah2012-09-231-24/+24
|
* mpd_qpowmod(): calculate result with zero-exponent for compatibility withStefan Krah2012-08-231-15/+17
| | | | decimal.py. The hack to remove the ideal exponent is no longer required.
* 1) Use _mpd_basedivmod() regardless of the length of the dividend. This isStefan Krah2012-08-221-6/+9
| | | | | | | | | | required for a corner case in dec_hash() in the following commit and also usually faster. dec_hash() needs some extra precision above MPD_MAX_PREC, and _mpd_base_ndivmod() is not audited for that. 2) Use _mpd_basemul() if the length of the smaller operand is less than or equal to 256. While this is technically an optimization, it is required for *testing* corner cases in dec_hash() in reasonable time.
* Fix Visual Studio warning.Stefan Krah2012-07-201-1/+1
|
* Issue #7652: Clean up _mpd_qinvroot() and mark it LIBMPDEC_ONLY. Use theStefan Krah2012-07-121-135/+140
| | | | algorithm from decimal.py for mpd_qsqrt().
* After 79d2eb29c755 it is no longer necessary to zero the output array:Stefan Krah2012-06-301-4/+4
| | | | | | None of the _mpd_shortadd() or _mpd_shortmul() functions read uninitialized values. Previously zeroing was required since _mpd_real_size() was called on the output array.
* Proactive reliability fix for broken FPUs: The base conversion functionsStefan Krah2012-06-304-180/+389
| | | | | | | | | | use log10() to calculate the size of the output array. The current code has been tested on x86/amd64 (and to a lesser extent on qemu-mips qemu-sparc) and produces sufficiently large values for all inputs tested so far (coefficient sizes of 10**18 - 1 are hard to test exhaustively). The new code does not rely on the correctness of log10() and resizes the output arrays if the allocated space is insufficient.
* Whitespace.Stefan Krah2012-06-221-1/+1
|
* Fix comment.Stefan Krah2012-06-201-1/+1
|
* Many cleanups of redundant code in mpd_qrem_near():Stefan Krah2012-06-201-23/+15
| | | | | | | | | | | | | | | | | | 1) _mpd_qdivmod() uses the context precision only in two places, and the new code should be exactly equivalent to the previous code. 2) Remove misleading comment. 3) The quotient *is* an integer with exponent 0, so calling mpd_qtrunc() is pointless. 4) Replace two instances of identical code by a single one. 5) Use _mpd_cmp_abs() instead of mpd_cmp_total_mag(): the operands are not special. 6) Don't clear MPD_Rounded in the status (with the current code it should not be set within the function).