diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-02-16 07:20:23 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-02-16 07:20:23 +0000 |
commit | 71430123d3cc7d5b261313213f17787f6e6f384d (patch) | |
tree | d4698956cff1467709e7dbba2accdb810323f125 /include | |
parent | 3efb36c25c6f8bbdccf7da3d24966289346fdd14 (diff) | |
download | ruby-71430123d3cc7d5b261313213f17787f6e6f384d.tar.gz |
ruby.h: use FIX2LONG
* include/ruby/ruby.h (RBIGNUM_SIGN): use FIX2LONG() instead of
FIX2INT() for optimization, since rb_big_cmp() returns only
Fixnum -1..+1 for Finxum 0.
(RBIGNUM_POSITIVE_P, RBIGNUM_NEGATIVE_P): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45001 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'include')
-rw-r--r-- | include/ruby/ruby.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/include/ruby/ruby.h b/include/ruby/ruby.h index 3394b8c7f9..55ea252d98 100644 --- a/include/ruby/ruby.h +++ b/include/ruby/ruby.h @@ -1069,9 +1069,9 @@ struct RStruct { #define RSTRUCT_SET(st, idx, v) RB_OBJ_WRITE(st, &RSTRUCT_CONST_PTR(st)[idx], (v)) #define RSTRUCT_GET(st, idx) (RSTRUCT_CONST_PTR(st)[idx]) -#define RBIGNUM_SIGN(b) (FIX2INT(rb_big_cmp((b), INT2FIX(0))) >= 0) -#define RBIGNUM_POSITIVE_P(b) (FIX2INT(rb_big_cmp((b), INT2FIX(0))) >= 0) -#define RBIGNUM_NEGATIVE_P(b) (FIX2INT(rb_big_cmp((b), INT2FIX(0))) < 0) +#define RBIGNUM_SIGN(b) (FIX2LONG(rb_big_cmp((b), INT2FIX(0))) >= 0) +#define RBIGNUM_POSITIVE_P(b) (FIX2LONG(rb_big_cmp((b), INT2FIX(0))) >= 0) +#define RBIGNUM_NEGATIVE_P(b) (FIX2LONG(rb_big_cmp((b), INT2FIX(0))) < 0) #define R_CAST(st) (struct st*) #define RBASIC(obj) (R_CAST(RBasic)(obj)) |