From 6f055f84ce9ebecb5535a49d12e46b06f8cf04e1 Mon Sep 17 00:00:00 2001 From: Matt Stroud Date: Wed, 22 Oct 2025 01:07:51 +0000 Subject: [PATCH] Fix missing net type mappings in FST traces (#6582) (#6583) --- docs/CONTRIBUTORS | 1 + include/verilated_fst_c.cpp | 3 + include/verilated_trace.h | 3 + test_regress/t/t_trace_fst.out | 756 ++++++++++++++++---------------- test_regress/t/t_trace_fst.v | 6 + test_regress/t/t_trace_saif.out | 5 + 6 files changed, 401 insertions(+), 373 deletions(-) diff --git a/docs/CONTRIBUTORS b/docs/CONTRIBUTORS index 3450e2e21..56c7b57fd 100644 --- a/docs/CONTRIBUTORS +++ b/docs/CONTRIBUTORS @@ -162,6 +162,7 @@ Marshal Qiao Martin Schmidt Martin Stadler Mateusz Gancarz +Matt Stroud Matthew Ballance Max Wipfli Michael Bedford Taylor diff --git a/include/verilated_fst_c.cpp b/include/verilated_fst_c.cpp index 604bee576..8c15533f7 100644 --- a/include/verilated_fst_c.cpp +++ b/include/verilated_fst_c.cpp @@ -230,6 +230,9 @@ void VerilatedFst::declare(uint32_t code, const char* name, int dtypenum, else if (kind == VerilatedTraceSigKind::TRI) varType = FST_VT_VCD_TRI; else if (kind == VerilatedTraceSigKind::TRI0) varType = FST_VT_VCD_TRI0; else if (kind == VerilatedTraceSigKind::TRI1) varType = FST_VT_VCD_TRI1; + else if (kind == VerilatedTraceSigKind::TRIAND) varType = FST_VT_VCD_TRIAND; + else if (kind == VerilatedTraceSigKind::TRIOR) varType = FST_VT_VCD_TRIOR; + else if (kind == VerilatedTraceSigKind::TRIREG) varType = FST_VT_VCD_TRIREG; else if (kind == VerilatedTraceSigKind::WIRE) varType = FST_VT_VCD_WIRE; // else if (type == VerilatedTraceSigType::INTEGER) varType = FST_VT_VCD_INTEGER; diff --git a/include/verilated_trace.h b/include/verilated_trace.h index 39725394d..3418e6e4e 100644 --- a/include/verilated_trace.h +++ b/include/verilated_trace.h @@ -77,6 +77,9 @@ enum class VerilatedTraceSigKind : uint8_t { TRI, TRI0, TRI1, + TRIAND, + TRIOR, + TRIREG, WIRE, VAR, }; diff --git a/test_regress/t/t_trace_fst.out b/test_regress/t/t_trace_fst.out index 5dacc97f4..e0b8d452d 100644 --- a/test_regress/t/t_trace_fst.out +++ b/test_regress/t/t_trace_fst.out @@ -1,5 +1,5 @@ $date - Fri Oct 10 11:48:13 2025 + Tue Oct 21 18:20:37 2025 $end $version @@ -35,21 +35,26 @@ $var supply1 1 3 fst_supply1 $end $var tri0 1 2 fst_tri0 $end $var tri1 1 3 fst_tri1 $end $var tri 1 4 fst_tri $end -$var wire 1 5 fst_wire $end +$var triand 1 5 fst_triand $end +$var trior 1 6 fst_trior $end +$var triand 1 7 fst_wand $end +$var trior 1 8 fst_wor $end +$var wire 1 9 fst_wire $end +$var wire 1 : fst_uwire $end $var wire 1 # fst_inout $end $scope module test $end $var wire 1 ! clk $end $var wire 1 % rstn $end $var wire 5 " state [4:0] $end -$var logic 5 6 state_w [4:0] $end -$var logic 5 7 state_array[0] [4:0] $end -$var logic 5 8 state_array[1] [4:0] $end -$var logic 5 9 state_array[2] [4:0] $end +$var logic 5 ; state_w [4:0] $end +$var logic 5 < state_array[0] [4:0] $end +$var logic 5 = state_array[1] [4:0] $end +$var logic 5 > state_array[2] [4:0] $end $scope module unnamedblk1 $end -$var int 32 : i [31:0] $end +$var int 32 ? i [31:0] $end $upscope $end $scope module unnamedblk2 $end -$var int 32 ; i [31:0] $end +$var int 32 @ i [31:0] $end $upscope $end $upscope $end $upscope $end @@ -57,12 +62,17 @@ $upscope $end $enddefinitions $end #0 $dumpvars -b00000000000000000000000000000000 ; -b00000000000000000000000000000000 : -b00000 9 -b00000 8 -b00000 7 -b00000 6 +b00000000000000000000000000000000 @ +b00000000000000000000000000000000 ? +b00000 > +b00000 = +b00000 < +b00000 ; +0: +09 +08 +07 +06 05 04 13 @@ -90,11 +100,11 @@ $end b00001 " b00000000000000000000000000000001 $ b0000000000000000000000000000000000000000000000000000000000001010 / -b10100 6 -b00001 7 -b00001 8 -b00001 9 -b00000000000000000000000000000011 : +b10100 ; +b00001 < +b00001 = +b00001 > +b00000000000000000000000000000011 ? #15 0! #20 @@ -162,972 +172,972 @@ b0000000000000000000000000000000000000000000000000000000001101110 / 1! b0000000000000000000000000000000000000000000000000000000001111000 / b00000000000000000000000000001100 $ -b10100 9 -b01010 6 -b00000000000000000000000000000010 ; +b10100 > +b01010 ; +b00000000000000000000000000000010 @ #125 0! #130 1! -b00101 6 -b01010 9 +b00101 ; +b01010 > b00000000000000000000000000001101 $ b0000000000000000000000000000000000000000000000000000000010000010 / -b10100 8 +b10100 = #135 0! #140 1! -b01010 8 +b01010 = b0000000000000000000000000000000000000000000000000000000010001100 / b00000000000000000000000000001110 $ -b00101 9 -b10110 6 -b10100 7 +b00101 > +b10110 ; +b10100 < b10100 " #145 0! #150 1! b01010 " -b01010 7 -b01011 6 -b10110 9 +b01010 < +b01011 ; +b10110 > b00000000000000000000000000001111 $ b0000000000000000000000000000000000000000000000000000000010010110 / -b00101 8 +b00101 = #155 0! #160 1! -b10110 8 +b10110 = b0000000000000000000000000000000000000000000000000000000010100000 / b00000000000000000000000000010000 $ -b01011 9 -b10001 6 -b00101 7 +b01011 > +b10001 ; +b00101 < b00101 " #165 0! #170 1! b10110 " -b10110 7 -b11100 6 -b10001 9 +b10110 < +b11100 ; +b10001 > b00000000000000000000000000010001 $ b0000000000000000000000000000000000000000000000000000000010101010 / -b01011 8 +b01011 = #175 0! #180 1! -b10001 8 +b10001 = b0000000000000000000000000000000000000000000000000000000010110100 / b00000000000000000000000000010010 $ -b11100 9 -b01110 6 -b01011 7 +b11100 > +b01110 ; +b01011 < b01011 " #185 0! #190 1! b10001 " -b10001 7 -b00111 6 -b01110 9 +b10001 < +b00111 ; +b01110 > b00000000000000000000000000010011 $ b0000000000000000000000000000000000000000000000000000000010111110 / -b11100 8 +b11100 = #195 0! #200 1! -b01110 8 +b01110 = b0000000000000000000000000000000000000000000000000000000011001000 / b00000000000000000000000000010100 $ -b00111 9 -b10111 6 -b11100 7 +b00111 > +b10111 ; +b11100 < b11100 " #205 0! #210 1! b01110 " -b01110 7 -b11111 6 -b10111 9 +b01110 < +b11111 ; +b10111 > b00000000000000000000000000010101 $ b0000000000000000000000000000000000000000000000000000000011010010 / -b00111 8 +b00111 = #215 0! #220 1! -b10111 8 +b10111 = b0000000000000000000000000000000000000000000000000000000011011100 / b00000000000000000000000000010110 $ -b11111 9 -b11011 6 -b00111 7 +b11111 > +b11011 ; +b00111 < b00111 " #225 0! #230 1! b10111 " -b10111 7 -b11001 6 -b11011 9 +b10111 < +b11001 ; +b11011 > b00000000000000000000000000010111 $ b0000000000000000000000000000000000000000000000000000000011100110 / -b11111 8 +b11111 = #235 0! #240 1! -b11011 8 +b11011 = b0000000000000000000000000000000000000000000000000000000011110000 / b00000000000000000000000000011000 $ -b11001 9 -b11000 6 -b11111 7 +b11001 > +b11000 ; +b11111 < b11111 " #245 0! #250 1! b11011 " -b11011 7 -b01100 6 -b11000 9 +b11011 < +b01100 ; +b11000 > b00000000000000000000000000011001 $ b0000000000000000000000000000000000000000000000000000000011111010 / -b11001 8 +b11001 = #255 0! #260 1! -b11000 8 +b11000 = b0000000000000000000000000000000000000000000000000000000100000100 / b00000000000000000000000000011010 $ -b01100 9 -b00110 6 -b11001 7 +b01100 > +b00110 ; +b11001 < b11001 " #265 0! #270 1! b11000 " -b11000 7 -b00011 6 -b00110 9 +b11000 < +b00011 ; +b00110 > b00000000000000000000000000011011 $ b0000000000000000000000000000000000000000000000000000000100001110 / -b01100 8 +b01100 = #275 0! #280 1! -b00110 8 +b00110 = b0000000000000000000000000000000000000000000000000000000100011000 / b00000000000000000000000000011100 $ -b00011 9 -b10101 6 -b01100 7 +b00011 > +b10101 ; +b01100 < b01100 " #285 0! #290 1! b00110 " -b00110 7 -b11110 6 -b10101 9 +b00110 < +b11110 ; +b10101 > b00000000000000000000000000011101 $ b0000000000000000000000000000000000000000000000000000000100100010 / -b00011 8 +b00011 = #295 0! #300 1! -b10101 8 +b10101 = b0000000000000000000000000000000000000000000000000000000100101100 / b00000000000000000000000000011110 $ -b11110 9 -b01111 6 -b00011 7 +b11110 > +b01111 ; +b00011 < b00011 " #305 0! #310 1! b10101 " -b10101 7 -b10011 6 -b01111 9 +b10101 < +b10011 ; +b01111 > b00000000000000000000000000011111 $ b0000000000000000000000000000000000000000000000000000000100110110 / -b11110 8 +b11110 = #315 0! #320 1! -b01111 8 +b01111 = b0000000000000000000000000000000000000000000000000000000101000000 / b00000000000000000000000000100000 $ -b10011 9 -b11101 6 -b11110 7 +b10011 > +b11101 ; +b11110 < b11110 " #325 0! #330 1! b01111 " -b01111 7 -b11010 6 -b11101 9 +b01111 < +b11010 ; +b11101 > b00000000000000000000000000100001 $ b0000000000000000000000000000000000000000000000000000000101001010 / -b10011 8 +b10011 = #335 0! #340 1! -b11101 8 +b11101 = b0000000000000000000000000000000000000000000000000000000101010100 / b00000000000000000000000000100010 $ -b11010 9 -b01101 6 -b10011 7 +b11010 > +b01101 ; +b10011 < b10011 " #345 0! #350 1! b11101 " -b11101 7 -b10010 6 -b01101 9 +b11101 < +b10010 ; +b01101 > b00000000000000000000000000100011 $ b0000000000000000000000000000000000000000000000000000000101011110 / -b11010 8 +b11010 = #355 0! #360 1! -b01101 8 +b01101 = b0000000000000000000000000000000000000000000000000000000101101000 / b00000000000000000000000000100100 $ -b10010 9 -b01001 6 -b11010 7 +b10010 > +b01001 ; +b11010 < b11010 " #365 0! #370 1! b01101 " -b01101 7 -b10000 6 -b01001 9 +b01101 < +b10000 ; +b01001 > b00000000000000000000000000100101 $ b0000000000000000000000000000000000000000000000000000000101110010 / -b10010 8 +b10010 = #375 0! #380 1! -b01001 8 +b01001 = b0000000000000000000000000000000000000000000000000000000101111100 / b00000000000000000000000000100110 $ -b10000 9 -b01000 6 -b10010 7 +b10000 > +b01000 ; +b10010 < b10010 " #385 0! #390 1! b01001 " -b01001 7 -b00100 6 -b01000 9 +b01001 < +b00100 ; +b01000 > b00000000000000000000000000100111 $ b0000000000000000000000000000000000000000000000000000000110000110 / -b10000 8 +b10000 = #395 0! #400 1! -b01000 8 +b01000 = b0000000000000000000000000000000000000000000000000000000110010000 / b00000000000000000000000000101000 $ -b00100 9 -b00010 6 -b10000 7 +b00100 > +b00010 ; +b10000 < b10000 " #405 0! #410 1! b01000 " -b01000 7 -b00001 6 -b00010 9 +b01000 < +b00001 ; +b00010 > b00000000000000000000000000101001 $ b0000000000000000000000000000000000000000000000000000000110011010 / -b00100 8 +b00100 = #415 0! #420 1! -b00010 8 +b00010 = b0000000000000000000000000000000000000000000000000000000110100100 / b00000000000000000000000000101010 $ -b00001 9 -b10100 6 -b00100 7 +b00001 > +b10100 ; +b00100 < b00100 " #425 0! #430 1! b00010 " -b00010 7 -b01010 6 -b10100 9 +b00010 < +b01010 ; +b10100 > b00000000000000000000000000101011 $ b0000000000000000000000000000000000000000000000000000000110101110 / -b00001 8 +b00001 = #435 0! #440 1! -b10100 8 +b10100 = b0000000000000000000000000000000000000000000000000000000110111000 / b00000000000000000000000000101100 $ -b01010 9 -b00101 6 -b00001 7 +b01010 > +b00101 ; +b00001 < b00001 " #445 0! #450 1! b10100 " -b10100 7 -b10110 6 -b00101 9 +b10100 < +b10110 ; +b00101 > b00000000000000000000000000101101 $ b0000000000000000000000000000000000000000000000000000000111000010 / -b01010 8 +b01010 = #455 0! #460 1! -b00101 8 +b00101 = b0000000000000000000000000000000000000000000000000000000111001100 / b00000000000000000000000000101110 $ -b10110 9 -b01011 6 -b01010 7 +b10110 > +b01011 ; +b01010 < b01010 " #465 0! #470 1! b00101 " -b00101 7 -b10001 6 -b01011 9 +b00101 < +b10001 ; +b01011 > b00000000000000000000000000101111 $ b0000000000000000000000000000000000000000000000000000000111010110 / -b10110 8 +b10110 = #475 0! #480 1! -b01011 8 +b01011 = b0000000000000000000000000000000000000000000000000000000111100000 / b00000000000000000000000000110000 $ -b10001 9 -b11100 6 -b10110 7 +b10001 > +b11100 ; +b10110 < b10110 " #485 0! #490 1! b01011 " -b01011 7 -b01110 6 -b11100 9 +b01011 < +b01110 ; +b11100 > b00000000000000000000000000110001 $ b0000000000000000000000000000000000000000000000000000000111101010 / -b10001 8 +b10001 = #495 0! #500 1! -b11100 8 +b11100 = b0000000000000000000000000000000000000000000000000000000111110100 / b00000000000000000000000000110010 $ -b01110 9 -b00111 6 -b10001 7 +b01110 > +b00111 ; +b10001 < b10001 " #505 0! #510 1! b11100 " -b11100 7 -b10111 6 -b00111 9 +b11100 < +b10111 ; +b00111 > b00000000000000000000000000110011 $ b0000000000000000000000000000000000000000000000000000000111111110 / -b01110 8 +b01110 = #515 0! #520 1! -b00111 8 +b00111 = b0000000000000000000000000000000000000000000000000000001000001000 / b00000000000000000000000000110100 $ -b10111 9 -b11111 6 -b01110 7 +b10111 > +b11111 ; +b01110 < b01110 " #525 0! #530 1! b00111 " -b00111 7 -b11011 6 -b11111 9 +b00111 < +b11011 ; +b11111 > b00000000000000000000000000110101 $ b0000000000000000000000000000000000000000000000000000001000010010 / -b10111 8 +b10111 = #535 0! #540 1! -b11111 8 +b11111 = b0000000000000000000000000000000000000000000000000000001000011100 / b00000000000000000000000000110110 $ -b11011 9 -b11001 6 -b10111 7 +b11011 > +b11001 ; +b10111 < b10111 " #545 0! #550 1! b11111 " -b11111 7 -b11000 6 -b11001 9 +b11111 < +b11000 ; +b11001 > b00000000000000000000000000110111 $ b0000000000000000000000000000000000000000000000000000001000100110 / -b11011 8 +b11011 = #555 0! #560 1! -b11001 8 +b11001 = b0000000000000000000000000000000000000000000000000000001000110000 / b00000000000000000000000000111000 $ -b11000 9 -b01100 6 -b11011 7 +b11000 > +b01100 ; +b11011 < b11011 " #565 0! #570 1! b11001 " -b11001 7 -b00110 6 -b01100 9 +b11001 < +b00110 ; +b01100 > b00000000000000000000000000111001 $ b0000000000000000000000000000000000000000000000000000001000111010 / -b11000 8 +b11000 = #575 0! #580 1! -b01100 8 +b01100 = b0000000000000000000000000000000000000000000000000000001001000100 / b00000000000000000000000000111010 $ -b00110 9 -b00011 6 -b11000 7 +b00110 > +b00011 ; +b11000 < b11000 " #585 0! #590 1! b01100 " -b01100 7 -b10101 6 -b00011 9 +b01100 < +b10101 ; +b00011 > b00000000000000000000000000111011 $ b0000000000000000000000000000000000000000000000000000001001001110 / -b00110 8 +b00110 = #595 0! #600 1! -b00011 8 +b00011 = b0000000000000000000000000000000000000000000000000000001001011000 / b00000000000000000000000000111100 $ -b10101 9 -b11110 6 -b00110 7 +b10101 > +b11110 ; +b00110 < b00110 " #605 0! #610 1! b00011 " -b00011 7 -b01111 6 -b11110 9 +b00011 < +b01111 ; +b11110 > b00000000000000000000000000111101 $ b0000000000000000000000000000000000000000000000000000001001100010 / -b10101 8 +b10101 = #615 0! #620 1! -b11110 8 +b11110 = b0000000000000000000000000000000000000000000000000000001001101100 / b00000000000000000000000000111110 $ -b01111 9 -b10011 6 -b10101 7 +b01111 > +b10011 ; +b10101 < b10101 " #625 0! #630 1! b11110 " -b11110 7 -b11101 6 -b10011 9 +b11110 < +b11101 ; +b10011 > b00000000000000000000000000111111 $ b0000000000000000000000000000000000000000000000000000001001110110 / -b01111 8 +b01111 = #635 0! #640 1! -b10011 8 +b10011 = b0000000000000000000000000000000000000000000000000000001010000000 / b00000000000000000000000001000000 $ -b11101 9 -b11010 6 -b01111 7 +b11101 > +b11010 ; +b01111 < b01111 " #645 0! #650 1! b10011 " -b10011 7 -b01101 6 -b11010 9 +b10011 < +b01101 ; +b11010 > b00000000000000000000000001000001 $ b0000000000000000000000000000000000000000000000000000001010001010 / -b11101 8 +b11101 = #655 0! #660 1! -b11010 8 +b11010 = b0000000000000000000000000000000000000000000000000000001010010100 / b00000000000000000000000001000010 $ -b01101 9 -b10010 6 -b11101 7 +b01101 > +b10010 ; +b11101 < b11101 " #665 0! #670 1! b11010 " -b11010 7 -b01001 6 -b10010 9 +b11010 < +b01001 ; +b10010 > b00000000000000000000000001000011 $ b0000000000000000000000000000000000000000000000000000001010011110 / -b01101 8 +b01101 = #675 0! #680 1! -b10010 8 +b10010 = b0000000000000000000000000000000000000000000000000000001010101000 / b00000000000000000000000001000100 $ -b01001 9 -b10000 6 -b01101 7 +b01001 > +b10000 ; +b01101 < b01101 " #685 0! #690 1! b10010 " -b10010 7 -b01000 6 -b10000 9 +b10010 < +b01000 ; +b10000 > b00000000000000000000000001000101 $ b0000000000000000000000000000000000000000000000000000001010110010 / -b01001 8 +b01001 = #695 0! #700 1! -b10000 8 +b10000 = b0000000000000000000000000000000000000000000000000000001010111100 / b00000000000000000000000001000110 $ -b01000 9 -b00100 6 -b01001 7 +b01000 > +b00100 ; +b01001 < b01001 " #705 0! #710 1! b10000 " -b10000 7 -b00010 6 -b00100 9 +b10000 < +b00010 ; +b00100 > b00000000000000000000000001000111 $ b0000000000000000000000000000000000000000000000000000001011000110 / -b01000 8 +b01000 = #715 0! #720 1! -b00100 8 +b00100 = b0000000000000000000000000000000000000000000000000000001011010000 / b00000000000000000000000001001000 $ -b00010 9 -b00001 6 -b01000 7 +b00010 > +b00001 ; +b01000 < b01000 " #725 0! #730 1! b00100 " -b00100 7 -b10100 6 -b00001 9 +b00100 < +b10100 ; +b00001 > b00000000000000000000000001001001 $ b0000000000000000000000000000000000000000000000000000001011011010 / -b00010 8 +b00010 = #735 0! #740 1! -b00001 8 +b00001 = b0000000000000000000000000000000000000000000000000000001011100100 / b00000000000000000000000001001010 $ -b10100 9 -b01010 6 -b00010 7 +b10100 > +b01010 ; +b00010 < b00010 " #745 0! #750 1! b00001 " -b00001 7 -b00101 6 -b01010 9 +b00001 < +b00101 ; +b01010 > b00000000000000000000000001001011 $ b0000000000000000000000000000000000000000000000000000001011101110 / -b10100 8 +b10100 = #755 0! #760 1! -b01010 8 +b01010 = b0000000000000000000000000000000000000000000000000000001011111000 / b00000000000000000000000001001100 $ -b00101 9 -b10110 6 -b10100 7 +b00101 > +b10110 ; +b10100 < b10100 " #765 0! #770 1! b01010 " -b01010 7 -b01011 6 -b10110 9 +b01010 < +b01011 ; +b10110 > b00000000000000000000000001001101 $ b0000000000000000000000000000000000000000000000000000001100000010 / -b00101 8 +b00101 = #775 0! #780 1! -b10110 8 +b10110 = b0000000000000000000000000000000000000000000000000000001100001100 / b00000000000000000000000001001110 $ -b01011 9 -b10001 6 -b00101 7 +b01011 > +b10001 ; +b00101 < b00101 " #785 0! #790 1! b10110 " -b10110 7 -b11100 6 -b10001 9 +b10110 < +b11100 ; +b10001 > b00000000000000000000000001001111 $ b0000000000000000000000000000000000000000000000000000001100010110 / -b01011 8 +b01011 = #795 0! #800 1! -b10001 8 +b10001 = b0000000000000000000000000000000000000000000000000000001100100000 / b00000000000000000000000001010000 $ -b11100 9 -b01110 6 -b01011 7 +b11100 > +b01110 ; +b01011 < b01011 " #805 0! #810 1! b10001 " -b10001 7 -b00111 6 -b01110 9 +b10001 < +b00111 ; +b01110 > b00000000000000000000000001010001 $ b0000000000000000000000000000000000000000000000000000001100101010 / -b11100 8 +b11100 = #815 0! #820 1! -b01110 8 +b01110 = b0000000000000000000000000000000000000000000000000000001100110100 / b00000000000000000000000001010010 $ -b00111 9 -b10111 6 -b11100 7 +b00111 > +b10111 ; +b11100 < b11100 " #825 0! #830 1! b01110 " -b01110 7 -b11111 6 -b10111 9 +b01110 < +b11111 ; +b10111 > b00000000000000000000000001010011 $ b0000000000000000000000000000000000000000000000000000001100111110 / -b00111 8 +b00111 = #835 0! #840 1! -b10111 8 +b10111 = b0000000000000000000000000000000000000000000000000000001101001000 / b00000000000000000000000001010100 $ -b11111 9 -b11011 6 -b00111 7 +b11111 > +b11011 ; +b00111 < b00111 " #845 0! #850 1! b10111 " -b10111 7 -b11001 6 -b11011 9 +b10111 < +b11001 ; +b11011 > b00000000000000000000000001010101 $ b0000000000000000000000000000000000000000000000000000001101010010 / -b11111 8 +b11111 = #855 0! #860 1! -b11011 8 +b11011 = b0000000000000000000000000000000000000000000000000000001101011100 / b00000000000000000000000001010110 $ -b11001 9 -b11000 6 -b11111 7 +b11001 > +b11000 ; +b11111 < b11111 " #865 0! #870 1! b11011 " -b11011 7 -b01100 6 -b11000 9 +b11011 < +b01100 ; +b11000 > b00000000000000000000000001010111 $ b0000000000000000000000000000000000000000000000000000001101100110 / -b11001 8 +b11001 = #875 0! #880 1! -b11000 8 +b11000 = b0000000000000000000000000000000000000000000000000000001101110000 / b00000000000000000000000001011000 $ -b01100 9 -b00110 6 -b11001 7 +b01100 > +b00110 ; +b11001 < b11001 " #885 0! #890 1! b11000 " -b11000 7 -b00011 6 -b00110 9 +b11000 < +b00011 ; +b00110 > b00000000000000000000000001011001 $ b0000000000000000000000000000000000000000000000000000001101111010 / -b01100 8 +b01100 = #895 0! #900 1! -b00110 8 +b00110 = b0000000000000000000000000000000000000000000000000000001110000100 / b00000000000000000000000001011010 $ -b00011 9 -b10101 6 -b01100 7 +b00011 > +b10101 ; +b01100 < b01100 " #905 0! #910 1! b00110 " -b00110 7 -b11110 6 -b10101 9 +b00110 < +b11110 ; +b10101 > b00000000000000000000000001011011 $ b0000000000000000000000000000000000000000000000000000001110001110 / -b00011 8 +b00011 = #915 0! #920 1! -b10101 8 +b10101 = b0000000000000000000000000000000000000000000000000000001110011000 / b00000000000000000000000001011100 $ -b11110 9 -b01111 6 -b00011 7 +b11110 > +b01111 ; +b00011 < b00011 " #925 0! #930 1! b10101 " -b10101 7 -b10011 6 -b01111 9 +b10101 < +b10011 ; +b01111 > b00000000000000000000000001011101 $ b0000000000000000000000000000000000000000000000000000001110100010 / -b11110 8 +b11110 = #935 0! #940 1! -b01111 8 +b01111 = b0000000000000000000000000000000000000000000000000000001110101100 / b00000000000000000000000001011110 $ -b10011 9 -b11101 6 -b11110 7 +b10011 > +b11101 ; +b11110 < b11110 " #945 0! #950 1! b01111 " -b01111 7 -b11010 6 -b11101 9 +b01111 < +b11010 ; +b11101 > b00000000000000000000000001011111 $ b0000000000000000000000000000000000000000000000000000001110110110 / -b10011 8 +b10011 = #955 0! #960 1! -b11101 8 +b11101 = b0000000000000000000000000000000000000000000000000000001111000000 / b00000000000000000000000001100000 $ -b11010 9 -b01101 6 -b10011 7 +b11010 > +b01101 ; +b10011 < b10011 " #965 0! #970 1! b11101 " -b11101 7 -b10010 6 -b01101 9 +b11101 < +b10010 ; +b01101 > b00000000000000000000000001100001 $ b0000000000000000000000000000000000000000000000000000001111001010 / -b11010 8 +b11010 = #975 0! #980 1! -b01101 8 +b01101 = b0000000000000000000000000000000000000000000000000000001111010100 / b00000000000000000000000001100010 $ -b10010 9 -b01001 6 -b11010 7 +b10010 > +b01001 ; +b11010 < b11010 " #985 0! #990 1! b01101 " -b01101 7 -b10000 6 -b01001 9 +b01101 < +b10000 ; +b01001 > b00000000000000000000000001100011 $ b0000000000000000000000000000000000000000000000000000001111011110 / -b10010 8 +b10010 = #995 0! #1000 1! -b01001 8 +b01001 = b0000000000000000000000000000000000000000000000000000001111101000 / b00000000000000000000000001100100 $ -b10000 9 -b01000 6 -b10010 7 +b10000 > +b01000 ; +b10010 < b10010 " diff --git a/test_regress/t/t_trace_fst.v b/test_regress/t/t_trace_fst.v index 44ac7feac..2e4f24dd4 100644 --- a/test_regress/t/t_trace_fst.v +++ b/test_regress/t/t_trace_fst.v @@ -38,7 +38,13 @@ module t (/*AUTOARG*/ tri0 fst_tri0; tri1 fst_tri1; tri fst_tri; + triand fst_triand; + trior fst_trior; + //trireg fst_trireg; // Error-UNSUPPORTED + wand fst_wand; + wor fst_wor; wire fst_wire; + uwire fst_uwire; inout fst_inout; Test test (/*AUTOINST*/ diff --git a/test_regress/t/t_trace_saif.out b/test_regress/t/t_trace_saif.out index ae73a26b2..76e04cab1 100644 --- a/test_regress/t/t_trace_saif.out +++ b/test_regress/t/t_trace_saif.out @@ -536,7 +536,12 @@ (fst_tri0 (T0 1000) (T1 0) (TZ 0) (TX 0) (TB 0) (TC 0)) (fst_tri1 (T0 0) (T1 1000) (TZ 0) (TX 0) (TB 0) (TC 1)) (fst_tri (T0 1000) (T1 0) (TZ 0) (TX 0) (TB 0) (TC 0)) + (fst_triand (T0 1000) (T1 0) (TZ 0) (TX 0) (TB 0) (TC 0)) + (fst_trior (T0 1000) (T1 0) (TZ 0) (TX 0) (TB 0) (TC 0)) + (fst_wand (T0 1000) (T1 0) (TZ 0) (TX 0) (TB 0) (TC 0)) + (fst_wor (T0 1000) (T1 0) (TZ 0) (TX 0) (TB 0) (TC 0)) (fst_wire (T0 1000) (T1 0) (TZ 0) (TX 0) (TB 0) (TC 0)) + (fst_uwire (T0 1000) (T1 0) (TZ 0) (TX 0) (TB 0) (TC 0)) (fst_inout (T0 1000) (T1 0) (TZ 0) (TX 0) (TB 0) (TC 0)) ) (INSTANCE test