Mercurial > octave
diff src/ov-fcn.h @ 12783:ad9263d965dc
First experimental profiler implementation with flat profile.
* profiler.cc: New file.
* profiler.h: New file.
* Makefile.am: Include new files in build process.
* oct-parse.yy (frob_function): Store location of function parsed.
* ov-fcn.h (octave_function::profiler_name): New method.
* ov-builtin.cc (octave_builtin::do_multi_index_op): Record timings in profiler.
* ov-mex-fcn.cc (octave_mex_function::do_multi_index_op): Ditto.
* ov-usr-fcn.cc (octave_user_script::do_multi_index_op): Ditto.
(octave_user_function::do_multi_index_op): Ditto.
(octave_user_function::octave_user_function): Initialize location_line/column.
(octave_user_function::profiler_name): New method.
* ov-usr-fcn.h (octave_user_function): New variables location_line,
location column and new method stash_fcn_location to set them.
* pt-fcn-handle.cc (tree_anon_fcn_handle::rvalue1): Store location.
author | Daniel Kraft <d@domob.eu> |
---|---|
date | Thu, 30 Jun 2011 20:04:34 +0200 |
parents | 12df7854fa7c |
children | e81ddf9cacd5 |
line wrap: on
line diff
--- a/src/ov-fcn.h Thu Jul 07 19:16:14 2011 -0400 +++ b/src/ov-fcn.h Thu Jun 30 20:04:34 2011 +0200 @@ -60,6 +60,9 @@ virtual bool is_system_fcn_file (void) const { return false; } virtual std::string fcn_file_name (void) const { return std::string (); } + + // The name to show in the profiler (also used as map-key). + virtual std::string profiler_name (void) const { return name (); } virtual std::string parent_fcn_name (void) const { return std::string (); }