aboutsummaryrefslogtreecommitdiffstats
path: root/gc.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-10-29 07:21:24 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-10-29 07:21:24 +0000
commit017ac002c5d1f4b6ced6b5ad7f2add74de0341e3 (patch)
tree7fc000860aef5eba69c8c3c2329387e06d0d0177 /gc.c
parenta3e88485b1aa37409cac5bef150431a5444e91eb (diff)
downloadruby-017ac002c5d1f4b6ced6b5ad7f2add74de0341e3.tar.gz
gc.c: fix UNLIKELY usage
* gc.c (gc_event_hook_needed_p): UNLIKELY makes no sense for boolean flag value. * gc.c (gc_event_hook, newobj_init): use in conditions instead. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52345 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'gc.c')
-rw-r--r--gc.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/gc.c b/gc.c
index 7979ea1bc6..47672bfc3d 100644
--- a/gc.c
+++ b/gc.c
@@ -1696,10 +1696,10 @@ gc_event_hook_body(rb_thread_t *th, rb_objspace_t *objspace, const rb_event_flag
}
#define gc_event_hook_available_p(objspace) ((objspace)->flags.has_hook)
-#define gc_event_hook_needed_p(objspace, event) (UNLIKELY((objspace)->hook_events & (event)))
+#define gc_event_hook_needed_p(objspace, event) ((objspace)->hook_events & (event))
#define gc_event_hook(objspace, event, data) do { \
- if (gc_event_hook_needed_p(objspace, event)) { \
+ if (UNLIKELY(gc_event_hook_needed_p(objspace, event))) { \
gc_event_hook_body(GET_THREAD(), (objspace), (event), (data)); \
} \
} while (0)
@@ -1760,7 +1760,7 @@ newobj_init(VALUE klass, VALUE flags, VALUE v1, VALUE v2, VALUE v3, rb_objspace_
objspace->total_allocated_objects++;
- if (hook_needed) {
+ if (UNLIKELY(hook_needed)) {
gc_event_hook(objspace, RUBY_INTERNAL_EVENT_NEWOBJ, obj);
}
gc_report(5, objspace, "newobj: %s\n", obj_info(obj));