aboutsummaryrefslogtreecommitdiffstats
path: root/src/grt/grt-vcd.adb
diff options
context:
space:
mode:
authorJonas Baggett <jonasb@tranquille.ch>2016-08-05 14:28:25 +0200
committerJonas Baggett <jonasb@tranquille.ch>2016-11-02 13:25:04 +0100
commitdf259b99050928cd72874377d7797c0de797935b (patch)
treee28835c3357a82ba1896130445d16f4999a480d7 /src/grt/grt-vcd.adb
parentb869a4acb52358fe8ca5decaac826af056bfdfca (diff)
downloadghdl-df259b99050928cd72874377d7797c0de797935b.tar.gz
ghdl-df259b99050928cd72874377d7797c0de797935b.tar.bz2
ghdl-df259b99050928cd72874377d7797c0de797935b.zip
Support added for * and **. Please note that wildcards inside names like /top/sub*/... are not supported yet, only synthax like /top/*/... works for now. Support for wildcards inside names will be added on version 1.2, at the same time as simple regexp support.
Current version set to 1.1
Diffstat (limited to 'src/grt/grt-vcd.adb')
-rw-r--r--src/grt/grt-vcd.adb34
1 files changed, 17 insertions, 17 deletions
diff --git a/src/grt/grt-vcd.adb b/src/grt/grt-vcd.adb
index b44090ed5..eab5fa89a 100644
--- a/src/grt/grt-vcd.adb
+++ b/src/grt/grt-vcd.adb
@@ -31,7 +31,7 @@
-- visible on the tree view (SST) of gtkwave, but both of them are visible
-- when no item is selected in the tree view and are mixed together.
-- (Same issue with FST waves.)
--- + After calling Vcd_Put_Hierarchy (Pack, Wave_Elem), Avhpi_Error is
+-- + After calling Vcd_Put_Hierarchy (Pack, Match_List), Avhpi_Error is
-- raised several times when no signal paths are provided in a wave option
-- file. It has no consequences other than a printed message.
-- (Same issue with FST waves.)
@@ -532,12 +532,12 @@ package body Grt.Vcd is
end Add_Signal;
procedure Vcd_Put_Hierarchy
- (Inst : VhpiHandleT; Wave_Elem : Wave_Opt.Elem_Acc)
+ (Inst : VhpiHandleT; Match_List : Design.Match_List)
is
Decl_It : VhpiHandleT;
Decl : VhpiHandleT;
Error : AvhpiErrorT;
- Wave_Elem_Child : Wave_Opt.Elem_Acc;
+ Match_List_Child : Design.Match_List;
begin
Vhpi_Iterator (VhpiDecls, Inst, Decl_It, Error);
if Error /= AvhpiErrorOk then
@@ -557,9 +557,9 @@ package body Grt.Vcd is
case Vhpi_Get_Kind (Decl) is
when VhpiPortDeclK
| VhpiSigDeclK =>
- Wave_Elem_Child := Get_Cursor
- (Wave_Elem, Avhpi_Get_Base_Name (Decl), Is_Signal => True);
- if Is_Displayed (Wave_Elem_Child) then
+ Match_List_Child := Get_Cursor
+ (Match_List, Avhpi_Get_Base_Name (Decl), Is_Signal => True);
+ if Is_Displayed (Match_List_Child) then
Add_Signal (Decl);
end if;
when others =>
@@ -590,14 +590,14 @@ package body Grt.Vcd is
| VhpiForGenerateK
| VhpiBlockStmtK
| VhpiCompInstStmtK =>
- Wave_Elem_Child := Get_Cursor
- (Wave_Elem, Avhpi_Get_Base_Name (Decl));
- if Is_Displayed (Wave_Elem_Child) then
+ Match_List_Child := Get_Cursor
+ (Match_List, Avhpi_Get_Base_Name (Decl));
+ if Is_Displayed (Match_List_Child) then
Vcd_Put ("$scope module ");
Vcd_Put_Name (Decl);
Vcd_Putc (' ');
Vcd_Put_End;
- Vcd_Put_Hierarchy (Decl, Wave_Elem_Child);
+ Vcd_Put_Hierarchy (Decl, Match_List_Child);
Vcd_Put ("$upscope ");
Vcd_Put_End;
end if;
@@ -873,7 +873,7 @@ package body Grt.Vcd is
Pack : VhpiHandleT;
Error : AvhpiErrorT;
Root : VhpiHandleT;
- Wave_Elem : Wave_Opt.Elem_Acc;
+ Match_List : Design.Match_List;
begin
-- Do nothing if there is no VCD file to generate.
if Vcd_Close = null then
@@ -894,17 +894,17 @@ package body Grt.Vcd is
Avhpi_Error (Error);
return;
end if;
- Wave_Elem := Get_Top_Cursor (Pkg, Avhpi_Get_Base_Name (Pack));
- if Is_Displayed (Wave_Elem) then
- Vcd_Put_Hierarchy (Pack, Wave_Elem);
+ Match_List := Get_Top_Cursor (Pkg, Avhpi_Get_Base_Name (Pack));
+ if Is_Displayed (Match_List) then
+ Vcd_Put_Hierarchy (Pack, Match_List);
end if;
end loop;
-- Then top entity.
Get_Root_Inst (Root);
- Wave_Elem := Get_Top_Cursor (Entity, Avhpi_Get_Base_Name (Root));
- if Is_Displayed (Wave_Elem) then
- Vcd_Put_Hierarchy (Root, Wave_Elem);
+ Match_List := Get_Top_Cursor (Entity, Avhpi_Get_Base_Name (Root));
+ if Is_Displayed (Match_List) then
+ Vcd_Put_Hierarchy (Root, Match_List);
end if;
Wave_Opt.Design.Last_Checks;