Граф коммитов

20 Коммитов

Автор SHA1 Сообщение Дата
nobu 01fb7e5b71 dtrace: wait command
* test/dtrace/helper.rb (DTrace::TestCase::READ_PROBES): wait
  the spawned command not to make a waiter thread.  fix up r55736.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55762 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-07-26 16:22:56 +00:00
nobu 7b3473a13a dtrace: chomp CR
* test/dtrace/helper.rb (DTrace::TestCase::READ_PROBES): chomp CR
  by pty.  fix up r55736.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55756 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-07-26 12:51:50 +00:00
nobu ceff9c8dcb dtrace: simplify
* test/dtrace/helper.rb (DTrace::TestCase::RUBYBIN): simply
  substitute basename.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-07-24 21:43:05 +00:00
nobu 106445d144 dtrace: suppress an empty line
* test/dtrace/helper.rb (DTrace::TestCase#trap_probe): suppress
  an extra empty line to the controlling tty by dtrace on Darwin.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55736 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-07-23 15:04:12 +00:00
nobu d98dd47313 dtrace: use miniruby instead of ruby-runner
* test/dtrace/helper.rb (DTrace::TestCase#trap_probe): ruby-runner
  cannot be the target of dtrace, use miniruby instead.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55735 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-07-23 14:59:25 +00:00
naruse 3e92b635fb Add frozen_string_literal: false for all files
When you change this to true, you may need to add more tests.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-16 05:07:31 +00:00
ngoto 7506498f38 * test/dtrace/helper.rb (Dtrace::TestCase#trap_probe): dtrace buffer size is set as 8m on Solaris (default 4m). [Bug #11697]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52597 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-16 12:38:09 +00:00
akr fb2008a73a * test/lib/envutil.rb: Moved from test/ruby/.
* test/lib/find_executable.rb: Ditto.

* test/lib/memory_status.rb: Ditto.

* test/lib/test/unit.rb: require envutil.

* test/: Don't require envutil in test files.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 16:05:37 +00:00
tmm1 4092574257 vm_method.c: add new ruby::method-cache-clear dtrace probe
* vm_method.c (rb_clear_method_cache_by_class): fire
  ruby::method-cache-clear probe on global or klass-level method cache
  clear [Bug #9190]
* probes.d (provider ruby): new dtrace probe
* doc/dtrace_probes.rdoc: docs for new probe
* test/dtrace/test_method_cache.rb: test for new probe

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44103 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-12-09 22:50:44 +00:00
nobu 14c9944e88 * test/dtrace/helper.rb: ignore empty SUDO. reuse SUDO value by using
class variable.  use test/unit instead of minitest/autorun.  dispose
  `Interrupted system call' error messages at parallel test.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40630 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-10 01:48:20 +00:00
nobu 8ee121d060 * test/dtrace/helper.rb (DTrace::TestCase#trap_probe): needs to pass
some paths by environment variables.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40147 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-06 00:59:12 +00:00
xibbar b0b460925c * test/dtrace/test_*.rb: use require_relative to require local library
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39940 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-26 14:31:31 +00:00
naruse 8dcc5ec888 Use EnvUtil.rubybin instead of Gem.ruby
[ruby-core:50943] [Bug #7581]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38424 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-17 12:48:12 +00:00
tenderlove afb02bbe92 * variable.c (rb_class_path_no_cache): add a function to get the class
path without caching the computed path. Some classes are frozen, and
  will raise an exception without this.

* probes.d (cmethod-entry, cmethod-return): separate cmethods from
  regular methods to match set trace func.

* probes_helper.h: refactor macros.  Fix probes to avoid calling
  #inspect when profiling.

* insns.def: update for use with new macros.

* vm_eval.c: ditto

* vm_insnhelper.c: ditto

* test/dtrace/test_singleton_function.rb: fix test for new output.

* test/dtrace/test_cmethod.rb: test the cmethod probes.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38099 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-01 02:13:06 +00:00
tenderlove 9709448474 * vm.c: add a return hook when a method raises an exception.
* probes_helper.h: look up klass and method if none are provided.

* eval.c: update macro usage.

* vm_eval.c: ditto.

* vm_insnhelper.c: ditto.

* test/dtrace/test_function_entry.rb: test for change.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38001 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-29 17:55:54 +00:00
nobu 8818a574a1 helper.rb: try with sudo
* test/dtrace/helper.rb (DTrace::TestCase#trap_probe): try with $SUDO if set.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37986 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-29 08:13:16 +00:00
nobu 5bb12509a2 * test/dtrace/helper.rb (DTrace::TestCase): check dtrace availability
once.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37969 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-29 04:39:09 +00:00
tenderlove 4bdd909518 * probes.d: Change function-entry probe to method-entry.
* insns.def: ditto
* probes_helper.h: ditto
* test/dtrace/test_function_entry.rb: ditto
* test/dtrace/test_singleton_function.rb: ditto
* vm.c: ditto
* vm_eval.c: ditto
* vm_insnhelper.c: ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37951 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-28 20:20:50 +00:00
naruse e7659bd2fd Define dtrace test classes only when dtrace exists
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37645 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-13 08:52:34 +00:00
tenderlove 4c740bae97 * probes.d: add DTrace probe declarations. [ruby-core:27448]
* array.c (empty_ary_alloc, ary_new): added array create DTrace probe.

* compile.c (rb_insns_name): allowing DTrace probes to access
  instruction sequence name.

* Makefile.in: translate probes.d file to appropriate header file.

* common.mk: declare dependencies on the DTrace header.

* configure.in: add a test for existence of DTrace.

* eval.c (setup_exception): add a probe for when an exception is
  raised.

* gc.c: Add DTrace probes for mark begin and end, and sweep begin and
  end.

* hash.c (empty_hash_alloc): Add a probe for hash allocation.

* insns.def: Add probes for function entry and return.

* internal.h: function declaration for compile.c change.

* load.c (rb_f_load): add probes for `load` entry and exit, require
  entry and exit, and wrapping search_required for load path search.

* object.c (rb_obj_alloc): added a probe for general object creation.

* parse.y (yycompile0): added a probe around parse and compile phase.

* string.c (empty_str_alloc, str_new): DTrace probes for string
  allocation.

* test/dtrace/*: tests for DTrace probes.

* vm.c (vm_invoke_proc): add probes for function return on exception
  raise, hash create, and instruction sequence execution.

* vm_core.h: add probe declarations for function entry and exit.

* vm_dump.c: add probes header file.

* vm_eval.c (vm_call0_cfunc, vm_call0_cfunc_with_frame): add probe on
  function entry and return.

* vm_exec.c: expose instruction number to instruction name function.

* vm_insnshelper.c: add function entry and exit probes for cfunc
  methods.

* vm_insnhelper.h: vm usage information is always collected, so
  uncomment the functions.

12 19:14:50 2012  Akinori MUSHA  <knu@iDaemons.org>

* configure.in (isinf, isnan): isinf() and isnan() are macros on
  DragonFly which cannot be found by AC_REPLACE_FUNCS().  This
  workaround enforces the fact that they exist on DragonFly.

12 15:59:38 2012  Shugo Maeda  <shugo@ruby-lang.org>

* vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo),
  vm_insnhelper.c (vm_search_method): revert r37616 because it's too
  slow.  [ruby-dev:46477]

* test/ruby/test_refinement.rb (test_inline_method_cache): skip
  the test until the bug is fixed efficiently.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37631 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-12 21:52:12 +00:00