Support snps directives

This commit is contained in:
Wilson Snyder 2012-02-02 10:26:45 -05:00
parent 9df8966f4a
commit ca927fe587
3 changed files with 9 additions and 3 deletions

View File

@ -12,6 +12,8 @@ indicates the contributor was also the author of the fix; Thanks!
*** Support arrayed SystemC I/O pins. [Christophe Joly]
**** Support "snps" directives. [Dan Katz]
**** Fix core dump with over 100 deep UNOPTFLAT, bug432. [Joe Eiler]

View File

@ -1747,9 +1747,9 @@ assertion clocks.
=head2 Synthesis Directive Assertion Support
With the --assert switch, Verilator reads any "//synopsys full_case" or "//
synopsys parallel_case" directives. The same applies to any "// ambit
synthesis", "//cadence" or "//pragma" directives of the same form.
With the --assert switch, Verilator reads any "//synopsys full_case" or
"//synopsys parallel_case" directives. The same applies to any "//snps",
"//ambit synthesis", "//cadence" or "//pragma" directives of the same form.
When these synthesis directives are discovered, Verilator will either
formally prove the directive to be true, or failing that, will insert the

View File

@ -394,6 +394,10 @@ void V3PreProcImp::comment(const string& text) {
cp+=strlen("synopsys");
synth = true;
if (*cp == '_') fileline()->v3error("Extra underscore in meta-comment; use /*synopsys {...}*/ not /*synopsys_{...}*/");
} else if (0==(strncmp(cp,"snps",strlen("snps")))) {
cp+=strlen("snps");
synth = true;
if (*cp == '_') fileline()->v3error("Extra underscore in meta-comment; use /*snps {...}*/ not /*snps_{...}*/");
} else if (0==(strncmp(cp,"cadence",strlen("cadence")))) {
cp+=strlen("cadence");
synth = true;