diff options
author | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2016-06-28 18:42:12 +0000 |
---|---|---|
committer | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2016-06-28 18:42:12 +0000 |
commit | 236b5e977818df29cf18005cc1a5a650d40434bd (patch) | |
tree | 72f4eaa3ac551406bdf8f528c1f976e527d6e349 /ChangeLog | |
parent | c9df0f82b7f364e95a9cf8a9492b00759cfe61af (diff) | |
download | ruby-236b5e977818df29cf18005cc1a5a650d40434bd.tar.gz |
* bignum.c (rb_big2ulong): the old logic seems to try to avoid
calculating `-(long)(num-1)-1` if `num` is not LONG_MIN. (Note that
`-LONG_MIN` may be larger than LONG_MAX) But C compilers can
optimize it into single NEG instruction.
Therefore those two conditions can be single if-body.
* bignum.c (rb_big2long): ditto.
* bignum.c (rb_big2ull): ditto.
* bignum.c (rb_big2ll): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55528 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 14 |
1 files changed, 14 insertions, 0 deletions
@@ -1,3 +1,17 @@ +Wed Jun 29 03:34:41 2016 NARUSE, Yui <naruse@ruby-lang.org> + + * bignum.c (rb_big2ulong): the old logic seems to try to avoid + calculating `-(long)(num-1)-1` if `num` is not LONG_MIN. (Note that + `-LONG_MIN` may be larger than LONG_MAX) But C compilers can + optimize it into single NEG instruction. + Therefore those two conditions can be single if-body. + + * bignum.c (rb_big2long): ditto. + + * bignum.c (rb_big2ull): ditto. + + * bignum.c (rb_big2ll): ditto. + Tue Jun 28 22:55:00 2016 Nobuyoshi Nakada <nobu@ruby-lang.org> * lib/pstore.rb (PStore::CHECKSUM_ALGO): extract the algorithm for |