From 774bff0adb44eaf5c806afb1bf9eff65d26b2f1f Mon Sep 17 00:00:00 2001 From: ko1 Date: Mon, 7 Oct 2013 07:21:11 +0000 Subject: * include/ruby/debug.h: add backtrace collecting APIs for profiler. * int rb_profile_frames(int start, int limit, VALUE *buff, int *lines); Collect information of frame information. * VALUE rb_profile_frame_path(VALUE frame); * VALUE rb_profile_frame_absolute_path(VALUE frame); * VALUE rb_profile_frame_label(VALUE frame); * VALUE rb_profile_frame_base_label(VALUE frame); * VALUE rb_profile_frame_first_lineno(VALUE frame); * VALUE rb_profile_frame_classpath(VALUE frame); * VALUE rb_profile_frame_singleton_method_p(VALUE frame); Get information about each frame. These APIs are designed for profilers, for example, no objectallocation, and enough information for profilers. In this version, this API collects only collect Ruby level frames. This issue will be fixed after Ruby 2.1. * vm_backtrace.c: implement above APIs. * iseq.c (rb_iseq_klass): return local_iseq's class. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43170 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) (limited to 'ChangeLog') diff --git a/ChangeLog b/ChangeLog index 688c6b2598..8dd1843bd9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,7 +1,31 @@ +Mon Oct 7 16:12:36 2013 Koichi Sasada + + * include/ruby/debug.h: add backtrace collecting APIs for profiler. + * int rb_profile_frames(int start, int limit, VALUE *buff, int *lines); + Collect information of frame information. + + * VALUE rb_profile_frame_path(VALUE frame); + * VALUE rb_profile_frame_absolute_path(VALUE frame); + * VALUE rb_profile_frame_label(VALUE frame); + * VALUE rb_profile_frame_base_label(VALUE frame); + * VALUE rb_profile_frame_first_lineno(VALUE frame); + * VALUE rb_profile_frame_classpath(VALUE frame); + * VALUE rb_profile_frame_singleton_method_p(VALUE frame); + Get information about each frame. + + These APIs are designed for profilers, for example, no objectallocation, + and enough information for profilers. + In this version, this API collects only collect Ruby level frames. + This issue will be fixed after Ruby 2.1. + + * vm_backtrace.c: implement above APIs. + + * iseq.c (rb_iseq_klass): return local_iseq's class. + Mon Oct 7 14:26:01 2013 Koichi Sasada * proc.c: catch up last commit. - Type of return value of rb_iseq_first_lineno() is now VALUE. + Type of return value of rb_iseq_first_lioneno() is now VALUE. * vm_insnhelper.c (argument_error): ditto. -- cgit v1.2.3