Disallow delays with `--lib-create` (#3691)

This commit is contained in:
Krzysztof Bieganski 2022-10-20 02:52:29 +02:00 committed by GitHub
parent f6f13c7fda
commit bec0b7d4d0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 9 additions and 0 deletions

View File

@ -741,6 +741,8 @@ Summary:
model has a time resolution that is always compatible with the time
precision of the upper instantiating module.
Designs compiled using this option cannot use :vlopt:`--timing` with delays.
See also :vlopt:`--protect-lib`.
.. option:: +libext+<ext>[+<ext>][...]
@ -1068,6 +1070,8 @@ Summary:
in the distribution for a demonstration of how to build and use the DPI
library.
Designs compiled using this option cannot use :vlopt:`--timing` with delays.
.. option:: --public
This is only for historical debug use. Using it may result in

View File

@ -113,6 +113,8 @@ Hierarchy blocks have some limitations including:
hierarchical model and pass up into another hierarchical model or the top
module.
* Delays are not allowed in hierarchy blocks.
But, the following usage is supported:
* Nested hierarchy blocks. A hierarchy block may instantiate other

View File

@ -559,6 +559,9 @@ static void process() {
// Output DPI protected library files
if (!v3Global.opt.libCreate().empty()) {
if (v3Global.rootp()->delaySchedulerp()) {
v3warn(E_UNSUPPORTED, "Unsupported: --lib-create with --timing and delays");
}
V3ProtectLib::protect();
V3EmitV::emitvFiles();
V3EmitC::emitcFiles();