aboutsummaryrefslogtreecommitdiffstats
path: root/src/synth/synth-stmts.adb
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2019-08-19 21:02:24 +0200
committerTristan Gingold <tgingold@free.fr>2019-08-20 04:13:12 +0200
commitfcd68928a4366c35748f488f949d5eada82998dd (patch)
tree1293db893401181d17da9a3fb92a61401e09c882 /src/synth/synth-stmts.adb
parent008d54327842b999f3ea442de5d9e312ab94b5f1 (diff)
downloadghdl-fcd68928a4366c35748f488f949d5eada82998dd.tar.gz
ghdl-fcd68928a4366c35748f488f949d5eada82998dd.tar.bz2
ghdl-fcd68928a4366c35748f488f949d5eada82998dd.zip
synth: handle verification units.
Diffstat (limited to 'src/synth/synth-stmts.adb')
-rw-r--r--src/synth/synth-stmts.adb21
1 files changed, 19 insertions, 2 deletions
diff --git a/src/synth/synth-stmts.adb b/src/synth/synth-stmts.adb
index 2eb6b453c..3f31dddb1 100644
--- a/src/synth/synth-stmts.adb
+++ b/src/synth/synth-stmts.adb
@@ -1618,10 +1618,8 @@ package body Synth.Stmts is
when Iir_Kind_Psl_Restrict_Directive =>
Synth_Psl_Restrict_Directive (Syn_Inst, Stmt);
when Iir_Kind_Psl_Assume_Directive =>
- -- Passive statement.
Synth_Psl_Assume_Directive (Syn_Inst, Stmt);
when Iir_Kind_Psl_Assert_Directive =>
- -- Passive statement.
Synth_Psl_Assert_Directive (Syn_Inst, Stmt);
when Iir_Kind_Concurrent_Assertion_Statement =>
-- Passive statement.
@@ -1632,4 +1630,23 @@ package body Synth.Stmts is
Stmt := Get_Chain (Stmt);
end loop;
end Synth_Concurrent_Statements;
+
+ procedure Synth_Verification_Unit
+ (Syn_Inst : Synth_Instance_Acc; Unit : Node)
+ is
+ Item : Node;
+ begin
+ Item := Get_Vunit_Item_Chain (Unit);
+ while Item /= Null_Node loop
+ case Get_Kind (Item) is
+ when Iir_Kind_Psl_Default_Clock =>
+ null;
+ when Iir_Kind_Psl_Assert_Directive =>
+ Synth_Psl_Assert_Directive (Syn_Inst, Item);
+ when others =>
+ Error_Kind ("synth_verification_unit", Item);
+ end case;
+ Item := Get_Chain (Item);
+ end loop;
+ end Synth_Verification_Unit;
end Synth.Stmts;