diff --git a/include/verilated_cov.h b/include/verilated_cov.h index 31d4fac0f..d7ede48bc 100644 --- a/include/verilated_cov.h +++ b/include/verilated_cov.h @@ -77,21 +77,28 @@ class VerilatedCovImp; static inline void VL_COV_TOGGLE_CHG_ST_I(const int width, uint32_t* covp, const IData newData, const IData oldData) { - for (int i = 0; i < width; ++i) *(covp + i) += ((newData ^ oldData) >> i) & 1; + const IData chgData = newData ^ oldData; + for (int i = 0; i < width; ++i) { + *(covp + 2 * i + ((newData >> i) & 1)) += (chgData >> i) & 1; + } } -static inline void VL_COV_TOGGLE_CHG_ST_Q(const int width, uint32_t* covp, const IData newData, - const IData oldData) { - for (int i = 0; i < width; ++i) *(covp + i) += ((newData ^ oldData) >> i) & 1; +static inline void VL_COV_TOGGLE_CHG_ST_Q(const int width, uint32_t* covp, const QData newData, + const QData oldData) { + const QData chgData = newData ^ oldData; + for (int i = 0; i < width; ++i) { + *(covp + 2 * i + ((newData >> i) & 1)) += (chgData >> i) & 1; + } } static inline void VL_COV_TOGGLE_CHG_ST_W(const int width, uint32_t* covp, WDataInP newData, WDataInP oldData) { for (int i = 0; i < VL_WORDS_I(width); ++i) { - const EData changed = newData[i] ^ oldData[i]; - if (changed) { + const EData chgData = newData[i] ^ oldData[i]; + if (chgData) { for (int j = 0; j < width - i * VL_EDATASIZE; ++j) { - *(covp + i * VL_EDATASIZE + j) += (changed >> j) & 1; + *(covp + (i * VL_EDATASIZE + j) * 2 + ((newData[i] >> j) & 1)) + += (chgData >> j) & 1; } } } @@ -99,18 +106,20 @@ static inline void VL_COV_TOGGLE_CHG_ST_W(const int width, uint32_t* covp, WData static inline void VL_COV_TOGGLE_CHG_MT_I(const int width, std::atomic* covp, const IData newData, const IData oldData) VL_MT_SAFE { + const IData chgData = newData ^ oldData; for (int i = 0; i < width; ++i) { - if (VL_BITISSET_I((newData ^ oldData), i)) { - (covp + i)->fetch_add(1, std::memory_order_relaxed); + if (VL_BITISSET_I(chgData, i)) { + (covp + 2 * i + ((newData >> i) & 1))->fetch_add(1, std::memory_order_relaxed); } } } static inline void VL_COV_TOGGLE_CHG_MT_Q(const int width, std::atomic* covp, - const IData newData, const IData oldData) VL_MT_SAFE { + const QData newData, const QData oldData) VL_MT_SAFE { + const QData chgData = newData ^ oldData; for (int i = 0; i < width; ++i) { - if (VL_BITISSET_Q((newData ^ oldData), i)) { - (covp + i)->fetch_add(1, std::memory_order_relaxed); + if (VL_BITISSET_Q(chgData, i)) { + (covp + 2 * i + ((newData >> i) & 1))->fetch_add(1, std::memory_order_relaxed); } } } @@ -118,11 +127,12 @@ static inline void VL_COV_TOGGLE_CHG_MT_Q(const int width, std::atomic static inline void VL_COV_TOGGLE_CHG_MT_W(const int width, std::atomic* covp, WDataInP newData, WDataInP oldData) VL_MT_SAFE { for (int i = 0; i < VL_WORDS_I(width); ++i) { - const EData changed = newData[i] ^ oldData[i]; - if (changed) { + const EData chgData = newData[i] ^ oldData[i]; + if (chgData) { for (int j = 0; j < width - i * VL_EDATASIZE; ++j) { - if (VL_BITISSET_E(changed, j)) { - (covp + i * VL_EDATASIZE + j)->fetch_add(1, std::memory_order_relaxed); + if (VL_BITISSET_E(chgData, j)) { + (covp + (i * VL_EDATASIZE + j) * 2 + ((newData[i] >> j) & 1)) + ->fetch_add(1, std::memory_order_relaxed); } } } diff --git a/src/V3AstNodeOther.h b/src/V3AstNodeOther.h index aaaf9698f..b69061703 100644 --- a/src/V3AstNodeOther.h +++ b/src/V3AstNodeOther.h @@ -2326,7 +2326,10 @@ public: ASTGEN_MEMBERS_AstCoverToggleDecl; void dump(std::ostream& str) const override; void dumpJson(std::ostream& str) const override; - int size() const override { return m_range.elements(); } + int size() const override { + // Changes 0 -> 1 and 1 -> 0 are counted separately + return 2 * m_range.elements(); + } const VNumRange& range() const { return m_range; } bool sameNode(const AstNode* samep) const override { const AstCoverToggleDecl* const asamep = VN_DBG_AS(samep, CoverToggleDecl); diff --git a/src/V3EmitCFunc.h b/src/V3EmitCFunc.h index c367bee6a..46a42d316 100644 --- a/src/V3EmitCFunc.h +++ b/src/V3EmitCFunc.h @@ -758,7 +758,7 @@ public: puts(");\n"); } void visit(AstCoverInc* nodep) override { - if (nodep->declp()->size() == 1) { + if (VN_IS(nodep->declp(), CoverOtherDecl)) { if (v3Global.opt.threads() > 1) { putns(nodep, "vlSymsp->__Vcoverage["); puts(cvtToStr(nodep->declp()->dataDeclThisp()->binNum())); @@ -777,7 +777,9 @@ public: } emitIQW(nodep->toggleExprp()); puts("("); - puts(cvtToStr(nodep->declp()->size())); + // Each bit of variable has 2 counters, so the size of variable is half of the size of + // coverpoint + puts(cvtToStr(nodep->declp()->size() / 2)); puts(", "); puts("vlSymsp->__Vcoverage + "); puts(cvtToStr(nodep->declp()->dataDeclThisp()->binNum())); diff --git a/src/V3EmitCImp.cpp b/src/V3EmitCImp.cpp index e1945a393..cfe543dd4 100644 --- a/src/V3EmitCImp.cpp +++ b/src/V3EmitCImp.cpp @@ -355,6 +355,7 @@ class EmitCImp final : EmitCFunc { puts("int step = (end >= begin) ? 1 : -1;\n"); // range is inclusive puts("for (int i = begin; i != end + step; i += step) {\n"); + puts("for (int j = 0; j < 2; j++) {\n"); if (v3Global.opt.threads() > 1) { puts("uint32_t* count32p = reinterpret_cast(countp);\n"); } else { @@ -366,6 +367,7 @@ class EmitCImp final : EmitCFunc { puts("if (!fullhier.empty() && fullhier[0] == '.') fullhier = fullhier.substr(1);\n"); puts("std::string commentWithIndex = commentp;\n"); puts("if (ranged) commentWithIndex += '[' + std::to_string(i) + ']';\n"); + puts("commentWithIndex += j ? \":0->1\" : \":1->0\";\n"); // Used for second++ instantiation of identical bin puts("if (!enable) count32p = &fake_zero_count;\n"); puts("*count32p = 0;\n"); @@ -382,6 +384,7 @@ class EmitCImp final : EmitCFunc { puts("++countp;\n"); puts("}\n"); puts("}\n"); + puts("}\n"); splitSizeInc(10); } } diff --git a/test_regress/t/t_cover_toggle.out b/test_regress/t/t_cover_toggle.out index cb27dbf59..b143b4d08 100644 --- a/test_regress/t/t_cover_toggle.out +++ b/test_regress/t/t_cover_toggle.out @@ -12,7 +12,7 @@ clk, check_real, check_array_real, check_string ); - 000019 input clk; +~000010 input clk; input real check_real; // Check issue #2741 input real check_array_real [1:0]; input string check_string; // Check issue #2766 @@ -25,11 +25,11 @@ logic b; } str_t; -%000002 reg toggle; initial toggle='0; +%000001 reg toggle; initial toggle='0; -%000002 str_t stoggle; initial stoggle='0; +%000001 str_t stoggle; initial stoggle='0; - 000019 str_logic strl; initial strl='0; +~000010 str_logic strl; initial strl='0; union { real val1; // TODO use bit [7:0] here @@ -38,11 +38,11 @@ const reg aconst = '0; -%000002 reg [1:0][1:0] ptoggle; initial ptoggle=0; +%000001 reg [1:0][1:0] ptoggle; initial ptoggle=0; integer cyc; initial cyc=1; -~000011 wire [7:0] cyc_copy = cyc[7:0]; -%000002 wire toggle_up; +%000006 wire [7:0] cyc_copy = cyc[7:0]; +%000001 wire toggle_up; typedef struct { int q[$]; @@ -55,8 +55,8 @@ // verilator lint_on ASCRANGE bit [0:0] y; } str_bit_t; -%000002 str_bit_t str_bit; -%000002 str_bit_t [5:2] str_bit_arr; +%000001 str_bit_t str_bit; +%000001 str_bit_t [5:2] str_bit_arr; assign strl.a = clk; @@ -146,29 +146,40 @@ // t.a1 and t.a2 collapse to a count of 2 - 000038 input clk; + 000020 input clk; -%000004 input toggle; - // CHECK_COVER(-1,"top.t.a*",4) - // 2 edges * (t.a1 and t.a2) +%000002 input toggle; + // CHECK_COVER(-1,"top.t.a*","toggle:0->1",2) + // CHECK_COVER(-2,"top.t.a*","toggle:1->0",2) + // (t.a1 and t.a2) -~000022 input [7:0] cyc_copy; - // CHECK_COVER(-1,"top.t.a*","cyc_copy[0]",22) - // CHECK_COVER(-2,"top.t.a*","cyc_copy[1]",10) - // CHECK_COVER(-3,"top.t.a*","cyc_copy[2]",4) - // CHECK_COVER(-4,"top.t.a*","cyc_copy[3]",2) - // CHECK_COVER(-5,"top.t.a*","cyc_copy[4]",0) - // CHECK_COVER(-6,"top.t.a*","cyc_copy[5]",0) - // CHECK_COVER(-7,"top.t.a*","cyc_copy[6]",0) - // CHECK_COVER(-8,"top.t.a*","cyc_copy[7]",0) +~000012 input [7:0] cyc_copy; + // CHECK_COVER(-1,"top.t.a*","cyc_copy[0]:0->1",12) + // CHECK_COVER(-2,"top.t.a*","cyc_copy[0]:1->0",10) + // CHECK_COVER(-3,"top.t.a*","cyc_copy[1]:0->1",6) + // CHECK_COVER(-4,"top.t.a*","cyc_copy[1]:1->0",4) + // CHECK_COVER(-5,"top.t.a*","cyc_copy[2]:0->1",2) + // CHECK_COVER(-6,"top.t.a*","cyc_copy[2]:1->0",2) + // CHECK_COVER(-7,"top.t.a*","cyc_copy[3]:0->1",2) + // CHECK_COVER(-8,"top.t.a*","cyc_copy[3]:1->0",0) + // CHECK_COVER(-9,"top.t.a*","cyc_copy[4]:0->1",0) + // CHECK_COVER(-10,"top.t.a*","cyc_copy[4]:1->0",0) + // CHECK_COVER(-11,"top.t.a*","cyc_copy[5]:0->1",0) + // CHECK_COVER(-12,"top.t.a*","cyc_copy[5]:1->0",0) + // CHECK_COVER(-13,"top.t.a*","cyc_copy[6]:0->1",0) + // CHECK_COVER(-14,"top.t.a*","cyc_copy[6]:1->0",0) + // CHECK_COVER(-15,"top.t.a*","cyc_copy[7]:0->1",0) + // CHECK_COVER(-16,"top.t.a*","cyc_copy[7]:1->0",0) -%000004 reg toggle_internal; - // CHECK_COVER(-1,"top.t.a*",4) - // 2 edges * (t.a1 and t.a2) +%000002 reg toggle_internal; + // CHECK_COVER(-1,"top.t.a*","toggle_internal:0->1",2) + // CHECK_COVER(-2,"top.t.a*","toggle_internal:1->0",2) + // (t.a1 and t.a2) -%000004 output reg toggle_up; - // CHECK_COVER(-1,"top.t.a*",4) - // 2 edges * (t.a1 and t.a2) +%000002 output reg toggle_up; + // CHECK_COVER(-1,"top.t.a*","toggle_up:0->1",2) + // CHECK_COVER(-2,"top.t.a*","toggle_up:1->0",2) + // (t.a1 and t.a2) always @ (posedge clk) begin toggle_internal <= toggle; @@ -181,10 +192,11 @@ clk, toggle_up ); - 000019 input clk; +~000010 input clk; -%000002 input toggle_up; - // CHECK_COVER(-1,"top.t.b1","toggle_up",2) +%000001 input toggle_up; + // CHECK_COVER(-1,"top.t.b1","toggle_up:0->1",1) + // CHECK_COVER(-2,"top.t.b1","toggle_up:1->0",1) /* verilator public_module */ @@ -203,8 +215,9 @@ // CHECK_COVER_MISSING(-1) // verilator coverage_on -%000002 input toggle; - // CHECK_COVER(-1,"top.t.o1","toggle",2) +%000001 input toggle; + // CHECK_COVER(-1,"top.t.o1","toggle:0->1",1) + // CHECK_COVER(-2,"top.t.o1","toggle:1->0",1) endmodule @@ -213,18 +226,18 @@ clk, toggle ); - 000019 input clk; -%000002 input toggle; +~000010 input clk; +%000001 input toggle; %000001 logic z; for (genvar i = 0; i < P; i++) begin -%000002 logic x; +%000001 logic x; always @ (posedge clk) begin x <= toggle; end for (genvar j = 0; j < 3; j++) begin -%000003 logic [2:0] y; +%000002 logic [2:0] y; always @ (negedge clk) begin y <= {toggle, ~toggle, 1'b1}; end @@ -240,6 +253,6 @@ input_struct ); - 000019 input str_logic input_struct; +~000010 input str_logic input_struct; endmodule diff --git a/test_regress/t/t_cover_toggle.v b/test_regress/t/t_cover_toggle.v index 456df1d08..1bbdbf8b6 100644 --- a/test_regress/t/t_cover_toggle.v +++ b/test_regress/t/t_cover_toggle.v @@ -148,26 +148,37 @@ module alpha (/*AUTOARG*/ input clk; input toggle; - // CHECK_COVER(-1,"top.t.a*",4) - // 2 edges * (t.a1 and t.a2) + // CHECK_COVER(-1,"top.t.a*","toggle:0->1",2) + // CHECK_COVER(-2,"top.t.a*","toggle:1->0",2) + // (t.a1 and t.a2) input [7:0] cyc_copy; - // CHECK_COVER(-1,"top.t.a*","cyc_copy[0]",22) - // CHECK_COVER(-2,"top.t.a*","cyc_copy[1]",10) - // CHECK_COVER(-3,"top.t.a*","cyc_copy[2]",4) - // CHECK_COVER(-4,"top.t.a*","cyc_copy[3]",2) - // CHECK_COVER(-5,"top.t.a*","cyc_copy[4]",0) - // CHECK_COVER(-6,"top.t.a*","cyc_copy[5]",0) - // CHECK_COVER(-7,"top.t.a*","cyc_copy[6]",0) - // CHECK_COVER(-8,"top.t.a*","cyc_copy[7]",0) + // CHECK_COVER(-1,"top.t.a*","cyc_copy[0]:0->1",12) + // CHECK_COVER(-2,"top.t.a*","cyc_copy[0]:1->0",10) + // CHECK_COVER(-3,"top.t.a*","cyc_copy[1]:0->1",6) + // CHECK_COVER(-4,"top.t.a*","cyc_copy[1]:1->0",4) + // CHECK_COVER(-5,"top.t.a*","cyc_copy[2]:0->1",2) + // CHECK_COVER(-6,"top.t.a*","cyc_copy[2]:1->0",2) + // CHECK_COVER(-7,"top.t.a*","cyc_copy[3]:0->1",2) + // CHECK_COVER(-8,"top.t.a*","cyc_copy[3]:1->0",0) + // CHECK_COVER(-9,"top.t.a*","cyc_copy[4]:0->1",0) + // CHECK_COVER(-10,"top.t.a*","cyc_copy[4]:1->0",0) + // CHECK_COVER(-11,"top.t.a*","cyc_copy[5]:0->1",0) + // CHECK_COVER(-12,"top.t.a*","cyc_copy[5]:1->0",0) + // CHECK_COVER(-13,"top.t.a*","cyc_copy[6]:0->1",0) + // CHECK_COVER(-14,"top.t.a*","cyc_copy[6]:1->0",0) + // CHECK_COVER(-15,"top.t.a*","cyc_copy[7]:0->1",0) + // CHECK_COVER(-16,"top.t.a*","cyc_copy[7]:1->0",0) reg toggle_internal; - // CHECK_COVER(-1,"top.t.a*",4) - // 2 edges * (t.a1 and t.a2) + // CHECK_COVER(-1,"top.t.a*","toggle_internal:0->1",2) + // CHECK_COVER(-2,"top.t.a*","toggle_internal:1->0",2) + // (t.a1 and t.a2) output reg toggle_up; - // CHECK_COVER(-1,"top.t.a*",4) - // 2 edges * (t.a1 and t.a2) + // CHECK_COVER(-1,"top.t.a*","toggle_up:0->1",2) + // CHECK_COVER(-2,"top.t.a*","toggle_up:1->0",2) + // (t.a1 and t.a2) always @ (posedge clk) begin toggle_internal <= toggle; @@ -183,7 +194,8 @@ module beta (/*AUTOARG*/ input clk; input toggle_up; - // CHECK_COVER(-1,"top.t.b1","toggle_up",2) + // CHECK_COVER(-1,"top.t.b1","toggle_up:0->1",1) + // CHECK_COVER(-2,"top.t.b1","toggle_up:1->0",1) /* verilator public_module */ @@ -203,7 +215,8 @@ module off (/*AUTOARG*/ // verilator coverage_on input toggle; - // CHECK_COVER(-1,"top.t.o1","toggle",2) + // CHECK_COVER(-1,"top.t.o1","toggle:0->1",1) + // CHECK_COVER(-2,"top.t.o1","toggle:1->0",1) endmodule diff --git a/test_regress/t/t_cover_toggle__points.out b/test_regress/t/t_cover_toggle__points.out index 6dc8fc51d..87fcc8e72 100644 --- a/test_regress/t/t_cover_toggle__points.out +++ b/test_regress/t/t_cover_toggle__points.out @@ -12,8 +12,9 @@ clk, check_real, check_array_real, check_string ); - 000019 input clk; -+000019 point: comment=clk hier=top.t +~000010 input clk; ++000010 point: comment=clk:0->1 hier=top.t +-000009 point: comment=clk:1->0 hier=top.t input real check_real; // Check issue #2741 input real check_array_real [1:0]; input string check_string; // Check issue #2766 @@ -26,15 +27,19 @@ logic b; } str_t; -%000002 reg toggle; initial toggle='0; --000002 point: comment=toggle hier=top.t +%000001 reg toggle; initial toggle='0; +-000001 point: comment=toggle:0->1 hier=top.t +-000001 point: comment=toggle:1->0 hier=top.t -%000002 str_t stoggle; initial stoggle='0; --000002 point: comment=stoggle.b hier=top.t --000002 point: comment=stoggle.u.ua hier=top.t +%000001 str_t stoggle; initial stoggle='0; +-000001 point: comment=stoggle.b:0->1 hier=top.t +-000001 point: comment=stoggle.b:1->0 hier=top.t +-000001 point: comment=stoggle.u.ua:0->1 hier=top.t +-000001 point: comment=stoggle.u.ua:1->0 hier=top.t - 000019 str_logic strl; initial strl='0; -+000019 point: comment=strl.a hier=top.t +~000010 str_logic strl; initial strl='0; ++000010 point: comment=strl.a:0->1 hier=top.t +-000009 point: comment=strl.a:1->0 hier=top.t union { real val1; // TODO use bit [7:0] here @@ -43,24 +48,37 @@ const reg aconst = '0; -%000002 reg [1:0][1:0] ptoggle; initial ptoggle=0; --000002 point: comment=ptoggle[0][0] hier=top.t --000000 point: comment=ptoggle[0][1] hier=top.t --000000 point: comment=ptoggle[1][0] hier=top.t --000000 point: comment=ptoggle[1][1] hier=top.t +%000001 reg [1:0][1:0] ptoggle; initial ptoggle=0; +-000001 point: comment=ptoggle[0][0]:0->1 hier=top.t +-000001 point: comment=ptoggle[0][0]:1->0 hier=top.t +-000000 point: comment=ptoggle[0][1]:0->1 hier=top.t +-000000 point: comment=ptoggle[0][1]:1->0 hier=top.t +-000000 point: comment=ptoggle[1][0]:0->1 hier=top.t +-000000 point: comment=ptoggle[1][0]:1->0 hier=top.t +-000000 point: comment=ptoggle[1][1]:0->1 hier=top.t +-000000 point: comment=ptoggle[1][1]:1->0 hier=top.t integer cyc; initial cyc=1; -~000011 wire [7:0] cyc_copy = cyc[7:0]; -+000011 point: comment=cyc_copy[0] hier=top.t --000005 point: comment=cyc_copy[1] hier=top.t --000002 point: comment=cyc_copy[2] hier=top.t --000001 point: comment=cyc_copy[3] hier=top.t --000000 point: comment=cyc_copy[4] hier=top.t --000000 point: comment=cyc_copy[5] hier=top.t --000000 point: comment=cyc_copy[6] hier=top.t --000000 point: comment=cyc_copy[7] hier=top.t -%000002 wire toggle_up; --000002 point: comment=toggle_up hier=top.t +%000006 wire [7:0] cyc_copy = cyc[7:0]; +-000006 point: comment=cyc_copy[0]:0->1 hier=top.t +-000005 point: comment=cyc_copy[0]:1->0 hier=top.t +-000003 point: comment=cyc_copy[1]:0->1 hier=top.t +-000002 point: comment=cyc_copy[1]:1->0 hier=top.t +-000001 point: comment=cyc_copy[2]:0->1 hier=top.t +-000001 point: comment=cyc_copy[2]:1->0 hier=top.t +-000001 point: comment=cyc_copy[3]:0->1 hier=top.t +-000000 point: comment=cyc_copy[3]:1->0 hier=top.t +-000000 point: comment=cyc_copy[4]:0->1 hier=top.t +-000000 point: comment=cyc_copy[4]:1->0 hier=top.t +-000000 point: comment=cyc_copy[5]:0->1 hier=top.t +-000000 point: comment=cyc_copy[5]:1->0 hier=top.t +-000000 point: comment=cyc_copy[6]:0->1 hier=top.t +-000000 point: comment=cyc_copy[6]:1->0 hier=top.t +-000000 point: comment=cyc_copy[7]:0->1 hier=top.t +-000000 point: comment=cyc_copy[7]:1->0 hier=top.t +%000001 wire toggle_up; +-000001 point: comment=toggle_up:0->1 hier=top.t +-000001 point: comment=toggle_up:1->0 hier=top.t typedef struct { int q[$]; @@ -73,28 +91,48 @@ // verilator lint_on ASCRANGE bit [0:0] y; } str_bit_t; -%000002 str_bit_t str_bit; --000002 point: comment=str_bit.x[3] hier=top.t --000001 point: comment=str_bit.x[4] hier=top.t --000001 point: comment=str_bit.x[5] hier=top.t --000002 point: comment=str_bit.y[0] hier=top.t -%000002 str_bit_t [5:2] str_bit_arr; --000000 point: comment=str_bit_arr[2].x[3] hier=top.t --000000 point: comment=str_bit_arr[2].x[4] hier=top.t --000000 point: comment=str_bit_arr[2].x[5] hier=top.t --000000 point: comment=str_bit_arr[2].y[0] hier=top.t --000000 point: comment=str_bit_arr[3].x[3] hier=top.t --000000 point: comment=str_bit_arr[3].x[4] hier=top.t --000000 point: comment=str_bit_arr[3].x[5] hier=top.t --000000 point: comment=str_bit_arr[3].y[0] hier=top.t --000002 point: comment=str_bit_arr[4].x[3] hier=top.t --000001 point: comment=str_bit_arr[4].x[4] hier=top.t --000001 point: comment=str_bit_arr[4].x[5] hier=top.t --000000 point: comment=str_bit_arr[4].y[0] hier=top.t --000000 point: comment=str_bit_arr[5].x[3] hier=top.t --000000 point: comment=str_bit_arr[5].x[4] hier=top.t --000000 point: comment=str_bit_arr[5].x[5] hier=top.t --000000 point: comment=str_bit_arr[5].y[0] hier=top.t +%000001 str_bit_t str_bit; +-000001 point: comment=str_bit.x[3]:0->1 hier=top.t +-000001 point: comment=str_bit.x[3]:1->0 hier=top.t +-000001 point: comment=str_bit.x[4]:0->1 hier=top.t +-000000 point: comment=str_bit.x[4]:1->0 hier=top.t +-000001 point: comment=str_bit.x[5]:0->1 hier=top.t +-000000 point: comment=str_bit.x[5]:1->0 hier=top.t +-000001 point: comment=str_bit.y[0]:0->1 hier=top.t +-000001 point: comment=str_bit.y[0]:1->0 hier=top.t +%000001 str_bit_t [5:2] str_bit_arr; +-000000 point: comment=str_bit_arr[2].x[3]:0->1 hier=top.t +-000000 point: comment=str_bit_arr[2].x[3]:1->0 hier=top.t +-000000 point: comment=str_bit_arr[2].x[4]:0->1 hier=top.t +-000000 point: comment=str_bit_arr[2].x[4]:1->0 hier=top.t +-000000 point: comment=str_bit_arr[2].x[5]:0->1 hier=top.t +-000000 point: comment=str_bit_arr[2].x[5]:1->0 hier=top.t +-000000 point: comment=str_bit_arr[2].y[0]:0->1 hier=top.t +-000000 point: comment=str_bit_arr[2].y[0]:1->0 hier=top.t +-000000 point: comment=str_bit_arr[3].x[3]:0->1 hier=top.t +-000000 point: comment=str_bit_arr[3].x[3]:1->0 hier=top.t +-000000 point: comment=str_bit_arr[3].x[4]:0->1 hier=top.t +-000000 point: comment=str_bit_arr[3].x[4]:1->0 hier=top.t +-000000 point: comment=str_bit_arr[3].x[5]:0->1 hier=top.t +-000000 point: comment=str_bit_arr[3].x[5]:1->0 hier=top.t +-000000 point: comment=str_bit_arr[3].y[0]:0->1 hier=top.t +-000000 point: comment=str_bit_arr[3].y[0]:1->0 hier=top.t +-000001 point: comment=str_bit_arr[4].x[3]:0->1 hier=top.t +-000001 point: comment=str_bit_arr[4].x[3]:1->0 hier=top.t +-000001 point: comment=str_bit_arr[4].x[4]:0->1 hier=top.t +-000000 point: comment=str_bit_arr[4].x[4]:1->0 hier=top.t +-000001 point: comment=str_bit_arr[4].x[5]:0->1 hier=top.t +-000000 point: comment=str_bit_arr[4].x[5]:1->0 hier=top.t +-000000 point: comment=str_bit_arr[4].y[0]:0->1 hier=top.t +-000000 point: comment=str_bit_arr[4].y[0]:1->0 hier=top.t +-000000 point: comment=str_bit_arr[5].x[3]:0->1 hier=top.t +-000000 point: comment=str_bit_arr[5].x[3]:1->0 hier=top.t +-000000 point: comment=str_bit_arr[5].x[4]:0->1 hier=top.t +-000000 point: comment=str_bit_arr[5].x[4]:1->0 hier=top.t +-000000 point: comment=str_bit_arr[5].x[5]:0->1 hier=top.t +-000000 point: comment=str_bit_arr[5].x[5]:1->0 hier=top.t +-000000 point: comment=str_bit_arr[5].y[0]:0->1 hier=top.t +-000000 point: comment=str_bit_arr[5].y[0]:1->0 hier=top.t assign strl.a = clk; @@ -139,30 +177,54 @@ %000001 reg [1:0] memory[121:110]; --000001 point: comment=memory[110][0] hier=top.t --000000 point: comment=memory[110][1] hier=top.t --000000 point: comment=memory[111][0] hier=top.t --000000 point: comment=memory[111][1] hier=top.t --000000 point: comment=memory[112][0] hier=top.t --000000 point: comment=memory[112][1] hier=top.t --000000 point: comment=memory[113][0] hier=top.t --000000 point: comment=memory[113][1] hier=top.t --000000 point: comment=memory[114][0] hier=top.t --000000 point: comment=memory[114][1] hier=top.t --000000 point: comment=memory[115][0] hier=top.t --000000 point: comment=memory[115][1] hier=top.t --000000 point: comment=memory[116][0] hier=top.t --000000 point: comment=memory[116][1] hier=top.t --000000 point: comment=memory[117][0] hier=top.t --000000 point: comment=memory[117][1] hier=top.t --000000 point: comment=memory[118][0] hier=top.t --000000 point: comment=memory[118][1] hier=top.t --000000 point: comment=memory[119][0] hier=top.t --000000 point: comment=memory[119][1] hier=top.t --000000 point: comment=memory[120][0] hier=top.t --000000 point: comment=memory[120][1] hier=top.t --000000 point: comment=memory[121][0] hier=top.t --000000 point: comment=memory[121][1] hier=top.t +-000001 point: comment=memory[110][0]:0->1 hier=top.t +-000000 point: comment=memory[110][0]:1->0 hier=top.t +-000000 point: comment=memory[110][1]:0->1 hier=top.t +-000000 point: comment=memory[110][1]:1->0 hier=top.t +-000000 point: comment=memory[111][0]:0->1 hier=top.t +-000000 point: comment=memory[111][0]:1->0 hier=top.t +-000000 point: comment=memory[111][1]:0->1 hier=top.t +-000000 point: comment=memory[111][1]:1->0 hier=top.t +-000000 point: comment=memory[112][0]:0->1 hier=top.t +-000000 point: comment=memory[112][0]:1->0 hier=top.t +-000000 point: comment=memory[112][1]:0->1 hier=top.t +-000000 point: comment=memory[112][1]:1->0 hier=top.t +-000000 point: comment=memory[113][0]:0->1 hier=top.t +-000000 point: comment=memory[113][0]:1->0 hier=top.t +-000000 point: comment=memory[113][1]:0->1 hier=top.t +-000000 point: comment=memory[113][1]:1->0 hier=top.t +-000000 point: comment=memory[114][0]:0->1 hier=top.t +-000000 point: comment=memory[114][0]:1->0 hier=top.t +-000000 point: comment=memory[114][1]:0->1 hier=top.t +-000000 point: comment=memory[114][1]:1->0 hier=top.t +-000000 point: comment=memory[115][0]:0->1 hier=top.t +-000000 point: comment=memory[115][0]:1->0 hier=top.t +-000000 point: comment=memory[115][1]:0->1 hier=top.t +-000000 point: comment=memory[115][1]:1->0 hier=top.t +-000000 point: comment=memory[116][0]:0->1 hier=top.t +-000000 point: comment=memory[116][0]:1->0 hier=top.t +-000000 point: comment=memory[116][1]:0->1 hier=top.t +-000000 point: comment=memory[116][1]:1->0 hier=top.t +-000000 point: comment=memory[117][0]:0->1 hier=top.t +-000000 point: comment=memory[117][0]:1->0 hier=top.t +-000000 point: comment=memory[117][1]:0->1 hier=top.t +-000000 point: comment=memory[117][1]:1->0 hier=top.t +-000000 point: comment=memory[118][0]:0->1 hier=top.t +-000000 point: comment=memory[118][0]:1->0 hier=top.t +-000000 point: comment=memory[118][1]:0->1 hier=top.t +-000000 point: comment=memory[118][1]:1->0 hier=top.t +-000000 point: comment=memory[119][0]:0->1 hier=top.t +-000000 point: comment=memory[119][0]:1->0 hier=top.t +-000000 point: comment=memory[119][1]:0->1 hier=top.t +-000000 point: comment=memory[119][1]:1->0 hier=top.t +-000000 point: comment=memory[120][0]:0->1 hier=top.t +-000000 point: comment=memory[120][0]:1->0 hier=top.t +-000000 point: comment=memory[120][1]:0->1 hier=top.t +-000000 point: comment=memory[120][1]:1->0 hier=top.t +-000000 point: comment=memory[121][0]:0->1 hier=top.t +-000000 point: comment=memory[121][0]:1->0 hier=top.t +-000000 point: comment=memory[121][1]:0->1 hier=top.t +-000000 point: comment=memory[121][1]:1->0 hier=top.t wire [1023:0] largeish = {992'h0, cyc}; // CHECK_COVER_MISSING(-1) @@ -208,41 +270,64 @@ // t.a1 and t.a2 collapse to a count of 2 - 000038 input clk; -+000038 point: comment=clk hier=top.t.a* + 000020 input clk; ++000020 point: comment=clk:0->1 hier=top.t.a* ++000018 point: comment=clk:1->0 hier=top.t.a* -%000004 input toggle; --000004 point: comment=toggle hier=top.t.a* - // CHECK_COVER(-1,"top.t.a*",4) - // 2 edges * (t.a1 and t.a2) +%000002 input toggle; +-000002 point: comment=toggle:0->1 hier=top.t.a* +-000002 point: comment=toggle:1->0 hier=top.t.a* + // CHECK_COVER(-1,"top.t.a*","toggle:0->1",2) + // CHECK_COVER(-2,"top.t.a*","toggle:1->0",2) + // (t.a1 and t.a2) -~000022 input [7:0] cyc_copy; -+000022 point: comment=cyc_copy[0] hier=top.t.a* -+000010 point: comment=cyc_copy[1] hier=top.t.a* --000004 point: comment=cyc_copy[2] hier=top.t.a* --000002 point: comment=cyc_copy[3] hier=top.t.a* --000000 point: comment=cyc_copy[4] hier=top.t.a* --000000 point: comment=cyc_copy[5] hier=top.t.a* --000000 point: comment=cyc_copy[6] hier=top.t.a* --000000 point: comment=cyc_copy[7] hier=top.t.a* - // CHECK_COVER(-1,"top.t.a*","cyc_copy[0]",22) - // CHECK_COVER(-2,"top.t.a*","cyc_copy[1]",10) - // CHECK_COVER(-3,"top.t.a*","cyc_copy[2]",4) - // CHECK_COVER(-4,"top.t.a*","cyc_copy[3]",2) - // CHECK_COVER(-5,"top.t.a*","cyc_copy[4]",0) - // CHECK_COVER(-6,"top.t.a*","cyc_copy[5]",0) - // CHECK_COVER(-7,"top.t.a*","cyc_copy[6]",0) - // CHECK_COVER(-8,"top.t.a*","cyc_copy[7]",0) +~000012 input [7:0] cyc_copy; ++000012 point: comment=cyc_copy[0]:0->1 hier=top.t.a* ++000010 point: comment=cyc_copy[0]:1->0 hier=top.t.a* +-000006 point: comment=cyc_copy[1]:0->1 hier=top.t.a* +-000004 point: comment=cyc_copy[1]:1->0 hier=top.t.a* +-000002 point: comment=cyc_copy[2]:0->1 hier=top.t.a* +-000002 point: comment=cyc_copy[2]:1->0 hier=top.t.a* +-000002 point: comment=cyc_copy[3]:0->1 hier=top.t.a* +-000000 point: comment=cyc_copy[3]:1->0 hier=top.t.a* +-000000 point: comment=cyc_copy[4]:0->1 hier=top.t.a* +-000000 point: comment=cyc_copy[4]:1->0 hier=top.t.a* +-000000 point: comment=cyc_copy[5]:0->1 hier=top.t.a* +-000000 point: comment=cyc_copy[5]:1->0 hier=top.t.a* +-000000 point: comment=cyc_copy[6]:0->1 hier=top.t.a* +-000000 point: comment=cyc_copy[6]:1->0 hier=top.t.a* +-000000 point: comment=cyc_copy[7]:0->1 hier=top.t.a* +-000000 point: comment=cyc_copy[7]:1->0 hier=top.t.a* + // CHECK_COVER(-1,"top.t.a*","cyc_copy[0]:0->1",12) + // CHECK_COVER(-2,"top.t.a*","cyc_copy[0]:1->0",10) + // CHECK_COVER(-3,"top.t.a*","cyc_copy[1]:0->1",6) + // CHECK_COVER(-4,"top.t.a*","cyc_copy[1]:1->0",4) + // CHECK_COVER(-5,"top.t.a*","cyc_copy[2]:0->1",2) + // CHECK_COVER(-6,"top.t.a*","cyc_copy[2]:1->0",2) + // CHECK_COVER(-7,"top.t.a*","cyc_copy[3]:0->1",2) + // CHECK_COVER(-8,"top.t.a*","cyc_copy[3]:1->0",0) + // CHECK_COVER(-9,"top.t.a*","cyc_copy[4]:0->1",0) + // CHECK_COVER(-10,"top.t.a*","cyc_copy[4]:1->0",0) + // CHECK_COVER(-11,"top.t.a*","cyc_copy[5]:0->1",0) + // CHECK_COVER(-12,"top.t.a*","cyc_copy[5]:1->0",0) + // CHECK_COVER(-13,"top.t.a*","cyc_copy[6]:0->1",0) + // CHECK_COVER(-14,"top.t.a*","cyc_copy[6]:1->0",0) + // CHECK_COVER(-15,"top.t.a*","cyc_copy[7]:0->1",0) + // CHECK_COVER(-16,"top.t.a*","cyc_copy[7]:1->0",0) -%000004 reg toggle_internal; --000004 point: comment=toggle_internal hier=top.t.a* - // CHECK_COVER(-1,"top.t.a*",4) - // 2 edges * (t.a1 and t.a2) +%000002 reg toggle_internal; +-000002 point: comment=toggle_internal:0->1 hier=top.t.a* +-000002 point: comment=toggle_internal:1->0 hier=top.t.a* + // CHECK_COVER(-1,"top.t.a*","toggle_internal:0->1",2) + // CHECK_COVER(-2,"top.t.a*","toggle_internal:1->0",2) + // (t.a1 and t.a2) -%000004 output reg toggle_up; --000004 point: comment=toggle_up hier=top.t.a* - // CHECK_COVER(-1,"top.t.a*",4) - // 2 edges * (t.a1 and t.a2) +%000002 output reg toggle_up; +-000002 point: comment=toggle_up:0->1 hier=top.t.a* +-000002 point: comment=toggle_up:1->0 hier=top.t.a* + // CHECK_COVER(-1,"top.t.a*","toggle_up:0->1",2) + // CHECK_COVER(-2,"top.t.a*","toggle_up:1->0",2) + // (t.a1 and t.a2) always @ (posedge clk) begin toggle_internal <= toggle; @@ -255,12 +340,15 @@ clk, toggle_up ); - 000019 input clk; -+000019 point: comment=clk hier=top.t.b1 +~000010 input clk; ++000010 point: comment=clk:0->1 hier=top.t.b1 +-000009 point: comment=clk:1->0 hier=top.t.b1 -%000002 input toggle_up; --000002 point: comment=toggle_up hier=top.t.b1 - // CHECK_COVER(-1,"top.t.b1","toggle_up",2) +%000001 input toggle_up; +-000001 point: comment=toggle_up:0->1 hier=top.t.b1 +-000001 point: comment=toggle_up:1->0 hier=top.t.b1 + // CHECK_COVER(-1,"top.t.b1","toggle_up:0->1",1) + // CHECK_COVER(-2,"top.t.b1","toggle_up:1->0",1) /* verilator public_module */ @@ -279,9 +367,11 @@ // CHECK_COVER_MISSING(-1) // verilator coverage_on -%000002 input toggle; --000002 point: comment=toggle hier=top.t.o1 - // CHECK_COVER(-1,"top.t.o1","toggle",2) +%000001 input toggle; +-000001 point: comment=toggle:0->1 hier=top.t.o1 +-000001 point: comment=toggle:1->0 hier=top.t.o1 + // CHECK_COVER(-1,"top.t.o1","toggle:0->1",1) + // CHECK_COVER(-2,"top.t.o1","toggle:1->0",1) endmodule @@ -290,54 +380,90 @@ clk, toggle ); - 000019 input clk; -+000019 point: comment=clk hier=top.t.p2 -+000019 point: comment=clk hier=top.t.p1 -%000002 input toggle; --000002 point: comment=toggle hier=top.t.p2 --000002 point: comment=toggle hier=top.t.p1 +~000010 input clk; ++000010 point: comment=clk:0->1 hier=top.t.p2 +-000009 point: comment=clk:1->0 hier=top.t.p2 ++000010 point: comment=clk:0->1 hier=top.t.p1 +-000009 point: comment=clk:1->0 hier=top.t.p1 +%000001 input toggle; +-000001 point: comment=toggle:0->1 hier=top.t.p2 +-000001 point: comment=toggle:1->0 hier=top.t.p2 +-000001 point: comment=toggle:0->1 hier=top.t.p1 +-000001 point: comment=toggle:1->0 hier=top.t.p1 %000001 logic z; --000001 point: comment=z hier=top.t.p2 --000000 point: comment=z hier=top.t.p1 +-000001 point: comment=z:0->1 hier=top.t.p2 +-000000 point: comment=z:1->0 hier=top.t.p2 +-000000 point: comment=z:0->1 hier=top.t.p1 +-000000 point: comment=z:1->0 hier=top.t.p1 for (genvar i = 0; i < P; i++) begin -%000002 logic x; --000002 point: comment=genblk1[0].x hier=top.t.p2 --000002 point: comment=genblk1[1].x hier=top.t.p2 --000002 point: comment=genblk1[0].x hier=top.t.p1 +%000001 logic x; +-000001 point: comment=genblk1[0].x:0->1 hier=top.t.p2 +-000001 point: comment=genblk1[0].x:1->0 hier=top.t.p2 +-000001 point: comment=genblk1[1].x:0->1 hier=top.t.p2 +-000001 point: comment=genblk1[1].x:1->0 hier=top.t.p2 +-000001 point: comment=genblk1[0].x:0->1 hier=top.t.p1 +-000001 point: comment=genblk1[0].x:1->0 hier=top.t.p1 always @ (posedge clk) begin x <= toggle; end for (genvar j = 0; j < 3; j++) begin -%000003 logic [2:0] y; --000001 point: comment=genblk1[0].genblk1[0].y[0] hier=top.t.p2 --000003 point: comment=genblk1[0].genblk1[0].y[1] hier=top.t.p2 --000002 point: comment=genblk1[0].genblk1[0].y[2] hier=top.t.p2 --000001 point: comment=genblk1[0].genblk1[1].y[0] hier=top.t.p2 --000003 point: comment=genblk1[0].genblk1[1].y[1] hier=top.t.p2 --000002 point: comment=genblk1[0].genblk1[1].y[2] hier=top.t.p2 --000001 point: comment=genblk1[0].genblk1[2].y[0] hier=top.t.p2 --000003 point: comment=genblk1[0].genblk1[2].y[1] hier=top.t.p2 --000002 point: comment=genblk1[0].genblk1[2].y[2] hier=top.t.p2 --000001 point: comment=genblk1[1].genblk1[0].y[0] hier=top.t.p2 --000003 point: comment=genblk1[1].genblk1[0].y[1] hier=top.t.p2 --000002 point: comment=genblk1[1].genblk1[0].y[2] hier=top.t.p2 --000001 point: comment=genblk1[1].genblk1[1].y[0] hier=top.t.p2 --000003 point: comment=genblk1[1].genblk1[1].y[1] hier=top.t.p2 --000002 point: comment=genblk1[1].genblk1[1].y[2] hier=top.t.p2 --000001 point: comment=genblk1[1].genblk1[2].y[0] hier=top.t.p2 --000003 point: comment=genblk1[1].genblk1[2].y[1] hier=top.t.p2 --000002 point: comment=genblk1[1].genblk1[2].y[2] hier=top.t.p2 --000001 point: comment=genblk1[0].genblk1[0].y[0] hier=top.t.p1 --000003 point: comment=genblk1[0].genblk1[0].y[1] hier=top.t.p1 --000002 point: comment=genblk1[0].genblk1[0].y[2] hier=top.t.p1 --000001 point: comment=genblk1[0].genblk1[1].y[0] hier=top.t.p1 --000003 point: comment=genblk1[0].genblk1[1].y[1] hier=top.t.p1 --000002 point: comment=genblk1[0].genblk1[1].y[2] hier=top.t.p1 --000001 point: comment=genblk1[0].genblk1[2].y[0] hier=top.t.p1 --000003 point: comment=genblk1[0].genblk1[2].y[1] hier=top.t.p1 --000002 point: comment=genblk1[0].genblk1[2].y[2] hier=top.t.p1 +%000002 logic [2:0] y; +-000001 point: comment=genblk1[0].genblk1[0].y[0]:0->1 hier=top.t.p2 +-000000 point: comment=genblk1[0].genblk1[0].y[0]:1->0 hier=top.t.p2 +-000002 point: comment=genblk1[0].genblk1[0].y[1]:0->1 hier=top.t.p2 +-000001 point: comment=genblk1[0].genblk1[0].y[1]:1->0 hier=top.t.p2 +-000001 point: comment=genblk1[0].genblk1[0].y[2]:0->1 hier=top.t.p2 +-000001 point: comment=genblk1[0].genblk1[0].y[2]:1->0 hier=top.t.p2 +-000001 point: comment=genblk1[0].genblk1[1].y[0]:0->1 hier=top.t.p2 +-000000 point: comment=genblk1[0].genblk1[1].y[0]:1->0 hier=top.t.p2 +-000002 point: comment=genblk1[0].genblk1[1].y[1]:0->1 hier=top.t.p2 +-000001 point: comment=genblk1[0].genblk1[1].y[1]:1->0 hier=top.t.p2 +-000001 point: comment=genblk1[0].genblk1[1].y[2]:0->1 hier=top.t.p2 +-000001 point: comment=genblk1[0].genblk1[1].y[2]:1->0 hier=top.t.p2 +-000001 point: comment=genblk1[0].genblk1[2].y[0]:0->1 hier=top.t.p2 +-000000 point: comment=genblk1[0].genblk1[2].y[0]:1->0 hier=top.t.p2 +-000002 point: comment=genblk1[0].genblk1[2].y[1]:0->1 hier=top.t.p2 +-000001 point: comment=genblk1[0].genblk1[2].y[1]:1->0 hier=top.t.p2 +-000001 point: comment=genblk1[0].genblk1[2].y[2]:0->1 hier=top.t.p2 +-000001 point: comment=genblk1[0].genblk1[2].y[2]:1->0 hier=top.t.p2 +-000001 point: comment=genblk1[1].genblk1[0].y[0]:0->1 hier=top.t.p2 +-000000 point: comment=genblk1[1].genblk1[0].y[0]:1->0 hier=top.t.p2 +-000002 point: comment=genblk1[1].genblk1[0].y[1]:0->1 hier=top.t.p2 +-000001 point: comment=genblk1[1].genblk1[0].y[1]:1->0 hier=top.t.p2 +-000001 point: comment=genblk1[1].genblk1[0].y[2]:0->1 hier=top.t.p2 +-000001 point: comment=genblk1[1].genblk1[0].y[2]:1->0 hier=top.t.p2 +-000001 point: comment=genblk1[1].genblk1[1].y[0]:0->1 hier=top.t.p2 +-000000 point: comment=genblk1[1].genblk1[1].y[0]:1->0 hier=top.t.p2 +-000002 point: comment=genblk1[1].genblk1[1].y[1]:0->1 hier=top.t.p2 +-000001 point: comment=genblk1[1].genblk1[1].y[1]:1->0 hier=top.t.p2 +-000001 point: comment=genblk1[1].genblk1[1].y[2]:0->1 hier=top.t.p2 +-000001 point: comment=genblk1[1].genblk1[1].y[2]:1->0 hier=top.t.p2 +-000001 point: comment=genblk1[1].genblk1[2].y[0]:0->1 hier=top.t.p2 +-000000 point: comment=genblk1[1].genblk1[2].y[0]:1->0 hier=top.t.p2 +-000002 point: comment=genblk1[1].genblk1[2].y[1]:0->1 hier=top.t.p2 +-000001 point: comment=genblk1[1].genblk1[2].y[1]:1->0 hier=top.t.p2 +-000001 point: comment=genblk1[1].genblk1[2].y[2]:0->1 hier=top.t.p2 +-000001 point: comment=genblk1[1].genblk1[2].y[2]:1->0 hier=top.t.p2 +-000001 point: comment=genblk1[0].genblk1[0].y[0]:0->1 hier=top.t.p1 +-000000 point: comment=genblk1[0].genblk1[0].y[0]:1->0 hier=top.t.p1 +-000002 point: comment=genblk1[0].genblk1[0].y[1]:0->1 hier=top.t.p1 +-000001 point: comment=genblk1[0].genblk1[0].y[1]:1->0 hier=top.t.p1 +-000001 point: comment=genblk1[0].genblk1[0].y[2]:0->1 hier=top.t.p1 +-000001 point: comment=genblk1[0].genblk1[0].y[2]:1->0 hier=top.t.p1 +-000001 point: comment=genblk1[0].genblk1[1].y[0]:0->1 hier=top.t.p1 +-000000 point: comment=genblk1[0].genblk1[1].y[0]:1->0 hier=top.t.p1 +-000002 point: comment=genblk1[0].genblk1[1].y[1]:0->1 hier=top.t.p1 +-000001 point: comment=genblk1[0].genblk1[1].y[1]:1->0 hier=top.t.p1 +-000001 point: comment=genblk1[0].genblk1[1].y[2]:0->1 hier=top.t.p1 +-000001 point: comment=genblk1[0].genblk1[1].y[2]:1->0 hier=top.t.p1 +-000001 point: comment=genblk1[0].genblk1[2].y[0]:0->1 hier=top.t.p1 +-000000 point: comment=genblk1[0].genblk1[2].y[0]:1->0 hier=top.t.p1 +-000002 point: comment=genblk1[0].genblk1[2].y[1]:0->1 hier=top.t.p1 +-000001 point: comment=genblk1[0].genblk1[2].y[1]:1->0 hier=top.t.p1 +-000001 point: comment=genblk1[0].genblk1[2].y[2]:0->1 hier=top.t.p1 +-000001 point: comment=genblk1[0].genblk1[2].y[2]:1->0 hier=top.t.p1 always @ (negedge clk) begin y <= {toggle, ~toggle, 1'b1}; end @@ -353,7 +479,8 @@ input_struct ); - 000019 input str_logic input_struct; -+000019 point: comment=input_struct.a hier=top.t.i_mod_struct +~000010 input str_logic input_struct; ++000010 point: comment=input_struct.a:0->1 hier=top.t.i_mod_struct +-000009 point: comment=input_struct.a:1->0 hier=top.t.i_mod_struct endmodule diff --git a/test_regress/t/t_cover_toggle_min.info.out b/test_regress/t/t_cover_toggle_min.info.out index a5581bcd2..975b502e0 100644 --- a/test_regress/t/t_cover_toggle_min.info.out +++ b/test_regress/t/t_cover_toggle_min.info.out @@ -3,12 +3,18 @@ SF:t/t_cover_toggle_min.v DA:10,1 BRDA:10,0,0,1 BRDA:10,0,1,0 +BRDA:10,0,2,0 +BRDA:10,0,3,0 DA:11,1 BRDA:11,0,0,0 -BRDA:11,0,1,1 -DA:12,2 -BRDA:12,0,0,2 +BRDA:11,0,1,0 +BRDA:11,0,2,1 +BRDA:11,0,3,0 +DA:12,1 +BRDA:12,0,0,1 BRDA:12,0,1,1 -BRF:6 +BRDA:12,0,2,1 +BRDA:12,0,3,0 +BRF:12 BRH:0 end_of_record diff --git a/test_regress/t/t_wrapper_context__top0.dat.out b/test_regress/t/t_wrapper_context__top0.dat.out index d4620c660..734b39e8d 100644 --- a/test_regress/t/t_wrapper_context__top0.dat.out +++ b/test_regress/t/t_wrapper_context__top0.dat.out @@ -1,72 +1,140 @@ # SystemC::Coverage-3 -C 'ft/t_wrapper_context.vl14n22ttogglepagev_toggle/topoclkhtop0.top' 21 -C 'ft/t_wrapper_context.vl15n22ttogglepagev_toggle/toporsthtop0.top' 2 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[0]htop0.top' 1 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[10]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[11]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[12]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[13]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[14]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[15]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[16]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[17]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[18]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[19]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[1]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[20]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[21]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[22]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[23]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[24]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[25]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[26]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[27]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[28]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[29]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[2]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[30]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[31]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[3]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[4]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[5]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[6]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[7]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[8]htop0.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[9]htop0.top' 0 -C 'ft/t_wrapper_context.vl17n22ttogglepagev_toggle/topostophtop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[0]htop0.top' 10 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[10]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[11]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[12]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[13]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[14]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[15]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[16]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[17]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[18]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[19]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[1]htop0.top' 5 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[20]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[21]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[22]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[23]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[24]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[25]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[26]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[27]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[28]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[29]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[2]htop0.top' 2 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[30]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[31]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[3]htop0.top' 1 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[4]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[5]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[6]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[7]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[8]htop0.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[9]htop0.top' 0 -C 'ft/t_wrapper_context.vl19n22ttogglepagev_toggle/topodone_ohtop0.top' 1 +C 'ft/t_wrapper_context.vl14n22ttogglepagev_toggle/topoclk:0->1htop0.top' 11 +C 'ft/t_wrapper_context.vl14n22ttogglepagev_toggle/topoclk:1->0htop0.top' 10 +C 'ft/t_wrapper_context.vl15n22ttogglepagev_toggle/toporst:0->1htop0.top' 1 +C 'ft/t_wrapper_context.vl15n22ttogglepagev_toggle/toporst:1->0htop0.top' 1 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[0]:0->1htop0.top' 1 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[0]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[10]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[10]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[11]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[11]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[12]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[12]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[13]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[13]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[14]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[14]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[15]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[15]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[16]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[16]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[17]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[17]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[18]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[18]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[19]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[19]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[1]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[1]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[20]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[20]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[21]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[21]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[22]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[22]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[23]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[23]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[24]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[24]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[25]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[25]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[26]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[26]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[27]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[27]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[28]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[28]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[29]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[29]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[2]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[2]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[30]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[30]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[31]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[31]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[3]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[3]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[4]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[4]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[5]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[5]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[6]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[6]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[7]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[7]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[8]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[8]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[9]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[9]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl17n22ttogglepagev_toggle/topostop:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl17n22ttogglepagev_toggle/topostop:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[0]:0->1htop0.top' 5 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[0]:1->0htop0.top' 5 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[10]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[10]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[11]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[11]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[12]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[12]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[13]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[13]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[14]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[14]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[15]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[15]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[16]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[16]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[17]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[17]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[18]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[18]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[19]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[19]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[1]:0->1htop0.top' 3 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[1]:1->0htop0.top' 2 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[20]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[20]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[21]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[21]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[22]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[22]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[23]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[23]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[24]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[24]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[25]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[25]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[26]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[26]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[27]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[27]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[28]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[28]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[29]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[29]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[2]:0->1htop0.top' 1 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[2]:1->0htop0.top' 1 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[30]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[30]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[31]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[31]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[3]:0->1htop0.top' 1 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[3]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[4]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[4]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[5]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[5]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[6]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[6]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[7]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[7]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[8]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[8]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[9]:0->1htop0.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[9]:1->0htop0.top' 0 +C 'ft/t_wrapper_context.vl19n22ttogglepagev_toggle/topodone_o:0->1htop0.top' 1 +C 'ft/t_wrapper_context.vl19n22ttogglepagev_toggle/topodone_o:1->0htop0.top' 0 C 'ft/t_wrapper_context.vl22n4tlinepagev_line/topoblockS22,25-29htop0.top' 1 C 'ft/t_wrapper_context.vl32n4tlinepagev_line/topoblockS32htop0.top' 11 C 'ft/t_wrapper_context.vl33n7tbranchpagev_branch/topoifS33-34htop0.top' 1 diff --git a/test_regress/t/t_wrapper_context__top1.dat.out b/test_regress/t/t_wrapper_context__top1.dat.out index 4b335614e..c4f90612a 100644 --- a/test_regress/t/t_wrapper_context__top1.dat.out +++ b/test_regress/t/t_wrapper_context__top1.dat.out @@ -1,72 +1,140 @@ # SystemC::Coverage-3 -C 'ft/t_wrapper_context.vl14n22ttogglepagev_toggle/topoclkhtop1.top' 11 -C 'ft/t_wrapper_context.vl15n22ttogglepagev_toggle/toporsthtop1.top' 2 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[0]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[10]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[11]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[12]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[13]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[14]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[15]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[16]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[17]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[18]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[19]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[1]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[20]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[21]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[22]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[23]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[24]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[25]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[26]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[27]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[28]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[29]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[2]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[30]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[31]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[3]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[4]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[5]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[6]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[7]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[8]htop1.top' 0 -C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[9]htop1.top' 0 -C 'ft/t_wrapper_context.vl17n22ttogglepagev_toggle/topostophtop1.top' 1 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[0]htop1.top' 5 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[10]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[11]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[12]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[13]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[14]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[15]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[16]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[17]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[18]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[19]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[1]htop1.top' 2 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[20]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[21]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[22]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[23]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[24]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[25]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[26]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[27]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[28]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[29]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[2]htop1.top' 1 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[30]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[31]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[3]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[4]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[5]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[6]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[7]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[8]htop1.top' 0 -C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[9]htop1.top' 0 -C 'ft/t_wrapper_context.vl19n22ttogglepagev_toggle/topodone_ohtop1.top' 1 +C 'ft/t_wrapper_context.vl14n22ttogglepagev_toggle/topoclk:0->1htop1.top' 6 +C 'ft/t_wrapper_context.vl14n22ttogglepagev_toggle/topoclk:1->0htop1.top' 5 +C 'ft/t_wrapper_context.vl15n22ttogglepagev_toggle/toporst:0->1htop1.top' 1 +C 'ft/t_wrapper_context.vl15n22ttogglepagev_toggle/toporst:1->0htop1.top' 1 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[0]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[0]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[10]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[10]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[11]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[11]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[12]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[12]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[13]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[13]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[14]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[14]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[15]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[15]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[16]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[16]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[17]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[17]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[18]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[18]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[19]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[19]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[1]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[1]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[20]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[20]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[21]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[21]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[22]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[22]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[23]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[23]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[24]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[24]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[25]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[25]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[26]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[26]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[27]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[27]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[28]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[28]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[29]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[29]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[2]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[2]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[30]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[30]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[31]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[31]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[3]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[3]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[4]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[4]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[5]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[5]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[6]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[6]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[7]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[7]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[8]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[8]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[9]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl16n22ttogglepagev_toggle/topotrace_number[9]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl17n22ttogglepagev_toggle/topostop:0->1htop1.top' 1 +C 'ft/t_wrapper_context.vl17n22ttogglepagev_toggle/topostop:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[0]:0->1htop1.top' 3 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[0]:1->0htop1.top' 2 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[10]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[10]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[11]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[11]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[12]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[12]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[13]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[13]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[14]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[14]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[15]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[15]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[16]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[16]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[17]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[17]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[18]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[18]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[19]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[19]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[1]:0->1htop1.top' 1 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[1]:1->0htop1.top' 1 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[20]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[20]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[21]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[21]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[22]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[22]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[23]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[23]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[24]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[24]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[25]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[25]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[26]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[26]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[27]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[27]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[28]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[28]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[29]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[29]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[2]:0->1htop1.top' 1 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[2]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[30]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[30]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[31]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[31]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[3]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[3]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[4]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[4]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[5]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[5]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[6]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[6]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[7]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[7]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[8]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[8]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[9]:0->1htop1.top' 0 +C 'ft/t_wrapper_context.vl18n22ttogglepagev_toggle/topocounter[9]:1->0htop1.top' 0 +C 'ft/t_wrapper_context.vl19n22ttogglepagev_toggle/topodone_o:0->1htop1.top' 1 +C 'ft/t_wrapper_context.vl19n22ttogglepagev_toggle/topodone_o:1->0htop1.top' 0 C 'ft/t_wrapper_context.vl22n4tlinepagev_line/topoblockS22,25-29htop1.top' 1 C 'ft/t_wrapper_context.vl32n4tlinepagev_line/topoblockS32htop1.top' 6 C 'ft/t_wrapper_context.vl33n7tbranchpagev_branch/topoifS33-34htop1.top' 1