From 975e3a19a7ef725f6358d74f5bf7fd20d4403587 Mon Sep 17 00:00:00 2001 From: ko1 Date: Mon, 11 Dec 2017 19:17:25 +0000 Subject: do not disable `trace_` prefix insns. * vm.c: introduce `ruby_vm_event_enabled_flags` which represents which event flags are enabled before. * vm_trace.c: do not turn off `trace_` prefix instructions because turn on overhead is a matter if a program repeats turn on and turn off frequently. * iseq.c (finish_iseq_build): respect `ruby_vm_event_enabled_flags`. * vm_insnhelper.c (vm_trace): check `ruby_vm_event_flags` and disable lazy trace-off technique (do not disable traces). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61122 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- vm.c | 1 + 1 file changed, 1 insertion(+) (limited to 'vm.c') diff --git a/vm.c b/vm.c index 7783758c79..cda304a078 100644 --- a/vm.c +++ b/vm.c @@ -320,6 +320,7 @@ VALUE ruby_vm_const_missing_count = 0; rb_vm_t *ruby_current_vm_ptr = NULL; rb_execution_context_t *ruby_current_execution_context_ptr = NULL; rb_event_flag_t ruby_vm_event_flags; +rb_event_flag_t ruby_vm_event_enabled_flags; rb_serial_t ruby_vm_global_method_state = 1; rb_serial_t ruby_vm_global_constant_state = 1; rb_serial_t ruby_vm_class_serial = 1; -- cgit v1.2.3