aboutsummaryrefslogtreecommitdiffstats
path: root/internal.h
diff options
context:
space:
mode:
author卜部昌平 <shyouhei@ruby-lang.org>2019-09-26 13:44:51 +0900
committer卜部昌平 <shyouhei@ruby-lang.org>2019-09-30 10:26:38 +0900
commitfba8627dc1c5b191713edeb5fc21cbe0ddde9e3c (patch)
tree9b84c118511abfff170877c65e352f5f649b2c08 /internal.h
parentdd883de5ba311c38818d0f638a94b4fbc63f5ee5 (diff)
downloadruby-fba8627dc1c5b191713edeb5fc21cbe0ddde9e3c.tar.gz
delete unnecessary branch
At last, not only myself but also your compiler are fully confident that the method entries pointed from call caches are immutable. We don't have to worry about silent updates. Just delete the branch that is now always false. Calculating ------------------------------------- ours trunk vm2_poly_same_method 2.142M 2.070M i/s - 6.000M times in 2.801148s 2.898994s Comparison: vm2_poly_same_method ours: 2141979.2 i/s trunk: 2069683.8 i/s - 1.03x slower
Diffstat (limited to 'internal.h')
-rw-r--r--internal.h2
1 files changed, 0 insertions, 2 deletions
diff --git a/internal.h b/internal.h
index 2346703d68..dee7775d95 100644
--- a/internal.h
+++ b/internal.h
@@ -2330,7 +2330,6 @@ enum method_missing_reason {
MISSING_NONE = 0x40
};
struct rb_callable_method_entry_struct;
-struct rb_method_definition_struct;
struct rb_execution_context_struct;
struct rb_control_frame_struct;
struct rb_calling_info;
@@ -2342,7 +2341,6 @@ struct rb_call_cache {
/* inline cache: values */
const struct rb_callable_method_entry_struct *me;
- const struct rb_method_definition_struct *def;
VALUE (*call)(struct rb_execution_context_struct *ec,
struct rb_control_frame_struct *cfp,