From 034bbf1fddd2f5d5eff0712869e95580977efca8 Mon Sep 17 00:00:00 2001 From: nobu Date: Mon, 6 Mar 2017 06:44:11 +0000 Subject: opt_eq_func refactor * vm_insnhelper.c (opt_eq_func): method to dispatch is resolved by only the receiver's class, not including the argument class. even if basic operation is redefined, other class conditions never meet. optimize Float and non-Float case, delegate to rb_float_equal directly. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57785 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- internal.h | 1 + 1 file changed, 1 insertion(+) (limited to 'internal.h') diff --git a/internal.h b/internal.h index eebd31073c..8d99f9fd8a 100644 --- a/internal.h +++ b/internal.h @@ -1307,6 +1307,7 @@ VALUE rb_int_lshift(VALUE x, VALUE y); VALUE rb_int_div(VALUE x, VALUE y); VALUE rb_int_abs(VALUE num); VALUE rb_float_abs(VALUE flt); +VALUE rb_float_equal(VALUE x, VALUE y); #if USE_FLONUM #define RUBY_BIT_ROTL(v, n) (((v) << (n)) | ((v) >> ((sizeof(v) * 8) - n))) -- cgit v1.2.3