diff options
author | mame <mame@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2018-10-20 10:45:48 +0000 |
---|---|---|
committer | mame <mame@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2018-10-20 10:45:48 +0000 |
commit | 6c9a7050329e1da977319e55aa9728c9b50f8250 (patch) | |
tree | 8afe24031dd9782060a72982bbca0fb68681acad /iseq.c | |
parent | e05e77fd6de19800442c613b2a4e6488339111fb (diff) |
Remove tracecoverage instructions
The instructions were used only for branch coverage.
Instead, it now uses a trace framework [Feature #14104].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65225 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'iseq.c')
-rw-r--r-- | iseq.c | 10 |
1 files changed, 8 insertions, 2 deletions
@@ -214,6 +214,7 @@ rb_iseq_mark(const rb_iseq_t *iseq) } rb_gc_mark(body->variable.coverage); + rb_gc_mark(body->variable.pc2branchindex); rb_gc_mark(body->location.label); rb_gc_mark(body->location.base_label); rb_gc_mark(body->location.pathobj); @@ -468,6 +469,8 @@ prepare_iseq_build(rb_iseq_t *iseq, } } ISEQ_COVERAGE_SET(iseq, coverage); + if (coverage && ISEQ_BRANCH_COVERAGE(iseq)) + ISEQ_PC2BRANCHINDEX_SET(iseq, rb_ary_tmp_new(0)); return Qtrue; } @@ -1922,7 +1925,7 @@ rb_iseq_disasm_insn(VALUE ret, const VALUE *code, size_t pos, { rb_event_flag_t events = rb_iseq_event_flags(iseq, pos); if (events) { - str = rb_str_catf(str, "[%s%s%s%s%s%s%s%s%s]", + str = rb_str_catf(str, "[%s%s%s%s%s%s%s%s%s%s%s]", events & RUBY_EVENT_LINE ? "Li" : "", events & RUBY_EVENT_CLASS ? "Cl" : "", events & RUBY_EVENT_END ? "En" : "", @@ -1931,7 +1934,10 @@ rb_iseq_disasm_insn(VALUE ret, const VALUE *code, size_t pos, events & RUBY_EVENT_C_CALL ? "Cc" : "", events & RUBY_EVENT_C_RETURN ? "Cr" : "", events & RUBY_EVENT_B_CALL ? "Bc" : "", - events & RUBY_EVENT_B_RETURN ? "Br" : ""); + events & RUBY_EVENT_B_RETURN ? "Br" : "", + events & RUBY_EVENT_COVERAGE_LINE ? "Cli" : "", + events & RUBY_EVENT_COVERAGE_BRANCH ? "Cbr" : "" + ); } } |