From 8c138db3d28828365f86f276ec753a248d2e0a19 Mon Sep 17 00:00:00 2001 From: ko1 Date: Mon, 26 Nov 2012 23:01:45 +0000 Subject: * vm_core.h: add members to rb_trace_arg_t: * `klass_solved' represents klass and id is checked. * `line' represents line calculated from cfp. * `file' represents line calculated from cfp. * vm_trace.c: fix to use above data stractures. No need to calculate klass and id, line and file pairs for each trace points. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37874 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- vm_core.h | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'vm_core.h') diff --git a/vm_core.h b/vm_core.h index f9b6181f54..511e324a29 100644 --- a/vm_core.h +++ b/vm_core.h @@ -905,6 +905,12 @@ typedef struct rb_trace_arg_struct { ID id; VALUE klass; VALUE data; + + int klass_solved; + + /* calc from cfp */ + int line; + VALUE file; } rb_trace_arg_t; void rb_threadptr_exec_event_hooks(rb_trace_arg_t *trace_arg); @@ -920,6 +926,8 @@ void rb_threadptr_exec_event_hooks(rb_trace_arg_t *trace_arg); trace_arg.id = (id_); \ trace_arg.klass = (klass_); \ trace_arg.data = (data_); \ + trace_arg.file = Qundef; \ + trace_arg.klass_solved = 0; \ rb_threadptr_exec_event_hooks(&trace_arg); \ } \ } \ -- cgit v1.2.3