path: root/ext/bigdecimal
AgeCommit message (Collapse)Author
2021-01-06[ruby/bigdecimal] Optimize the conversion from small BignumKenta Murata
2021-01-06[ruby/bigdecimal] Check the function availabilities separatelyKenta Murata
2021-01-04Update ext/bigdecimal/dependKenta Murata
2021-01-04[ruby/bigdecimal] Move some definitions to missing.hKenta Murata
2021-01-04Revert "Include RUBY_EXTCONF_H if available"Kenta Murata
It is unnecessary because RUBY_EXTCONF_H has already been included in ruby/internal/config.h. This reverts commit 0644f466b0ef017202712882b557ba32863002c4.
2021-01-03Include RUBY_EXTCONF_H if availableKenta Murata
2021-01-02Avoid to use __builtin_clzl in SPARC SolarisKenta Murata
2021-01-02Add __x86_64__ guard to include x86intrin.hKenta Murata
2021-01-02Check if x86intrin.h is available not only existingNobuyoshi Nakada
2021-01-02[ruby/bigdecimal] Update dependKenta Murata
2021-01-02[ruby/bigdecimal] Fix test for Ruby 2.4Kenta Murata
Ruby 2.4 does not have RbConfig::LIMITS.
2021-01-02[ruby/bigdecimal] Implement special conversions for 64-bit integersKenta Murata
This change improves the conversion speed from small integers. ``` Comparison: big_n9 master: 4003688.9 i/s bigdecimal 3.0.0: 1270551.0 i/s - 3.15x slower big_n19 master: 5410096.4 i/s bigdecimal 3.0.0: 1000250.3 i/s - 5.41x slower ```
2020-12-31[ruby/bigdecimal] Refactor object allocationKenta Murata
2020-12-31[ruby/bigdecimal] Remove ToValueKenta Murata
2020-12-30[ruby/bigdecimal] Remove VP_EXCEPTION_MEMORYKenta Murata
It is no longer used due to the previous commit.
2020-12-30[ruby/bigdecimal] Remove needless pointer checksKenta Murata
xmalloc and xrealloc return non-NULL pointers or raise memory error.
2020-12-29[ruby/bigdecimal] Define bool, true, and false for old RubyKenta Murata
2020-12-29[ruby/bigdecimal] Alloc wrapper object before VpAllocKenta Murata
Calling TypedData_Wrap_Struct after VpAlloc may cause memory leak. This commit reverts d11b78f9c420f39ee800b9feed4839cd28f4ff5c.
2020-12-29[ruby/bigdecimal] Refactor to extract VpCheckExceptionKenta Murata
2020-12-29[ruby/bigdecimal] Refactor to decompose VpNewVarArg into small functionsKenta Murata
2020-12-29[ruby/bigdecimal] Reduce needless object allocation in f_BigDecimalKenta Murata
2020-12-28[ruby/bigdecimal] [Doc] Fix the document of BigDecimal()Kenta Murata
2020-12-28[ruby/bigdecimal] Reduce conditional branch count in VpNewVarArgKenta Murata
2020-12-20bigdecimal: initialize conditionally assigned variableNobuyoshi Nakada
2020-12-19[bigdecimal] Version 3.0.0Kenta Murata
2020-12-19[bigdecimal] Add BigDecimal#n_significant_digitsKenta Murata
2020-12-19[bigdecimal] Make BigDecimal#precs deprecatedKenta Murata
2020-12-19[bigdecimal] Add BigDecimal#precisionKenta Murata
2020-12-19[bigdecimal] Make bigdecimal Ractor safeKenta Murata
2020-12-19[bigdecimal] Use DBLE_FIGKenta Murata
2020-12-19[bigdecimal] Fix the default precision of Float#to_dKenta Murata
Fix [Bug #13331]
2020-12-19[bigdecimal] Use rb_undef_alloc_func to undefine allocateKenta Murata
2020-12-15Import bigdecimal 2.0.2 (#3905)Kenta Murata
* remove duplicated include * Make BigDecimal#round with argument < 1 return Integer Fixes [Bug #12780] * Use a higher default precision for BigDecimal#power and #** When a fractional power is given, increase the precision if the precision isn't specified via power's second argument: Float: increase by 15 (rough number of decimal precision in float) BigDecimal: increase by adding similar precision modifier as done to calculate the base precision. Rational: double the precision, since a BigDecimal is created, but the created BigDecimal uses the same precision. Increasing the precision for these power calculations has the obvious tradeoff of making the calculations slower. Fixes Ruby Bug #17264 * Use DBLE_FIG for a Float value * Version 2.0.1 Co-authored-by: pavel <> Co-authored-by: Jeremy Evans <> Notes: Merged-By: mrkn <>
2020-10-10Fixed typo in commentIkko Ashimine
alway -> always Notes: Merged:
2020-08-27sed -i '/rmodule.h/d'卜部昌平
Notes: Merged:
2020-08-27sed -i '/r_cast.h/d'卜部昌平
Notes: Merged:
2020-08-27sed -i '\,2/extern.h,d'卜部昌平
Notes: Merged:
2020-08-18Fixed the invalid SPDX identifier on gemspecHiroshi SHIBATA
2020-07-06[ruby/bigdecimal] Version 2.0.1Kenta Murata Notes: Merged:
2020-07-06[ruby/bigdecimal] Return US-ASCII string from BigDecimal#to_sKenta Murata
Fixes #159 Notes: Merged:
2020-07-06[ruby/bigdecimal] Drop Ruby 2.3 supportKenta Murata Notes: Merged:
2020-07-06[ruby/bigdecimal] Support Ruby < 2.6Kenta Murata Notes: Merged:
2020-07-06[ruby/bigdecimal] Add Complex#to_dKenta Murata Notes: Merged:
2020-07-06[ruby/bigdecimal] Remove definition of BigDecimal#initialize_copyJeremy Evans
This leaves the default definition, which will raise FrozenError. Notes: Merged:
2020-07-06[ruby/bigdecimal] Support a Complex in Kernel.BigDecimal()Kenta Murata Notes: Merged:
2020-07-06[ruby/bigdecimal] Undef BigDecimal#initialize_copyJeremy Evans
Both BigDecimal#clone and BigDecimal#dup return self, there is no reason to have initialize_copy exposed as a Ruby method. The same is true for initialize_clone and initialize_dup. Notes: Merged:
2020-07-06Removed ext/bigdecimal/util/depend unused since ↵Nobuyoshi Nakada
2020-05-13ext/bigdecimal/bigdecimal.c, ext/date/date_core.c: undef NDEBUGYusuke Endoh
`#define NDEBUG` produces "macro redefined" warnings when it is already defined via cppflags
2020-05-11sed -i 's|ruby/impl|ruby/internal|'卜部昌平
To fix build failures. Notes: Merged:
2020-05-11sed -i s|ruby/3|ruby/impl|g卜部昌平
This shall fix compile errors. Notes: Merged: