diff options
author | Miodrag Milanović <mmicko@gmail.com> | 2021-08-20 16:09:55 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-08-20 16:09:55 +0200 |
commit | c2866780d2ee82334649237f77a89900fa0de4bc (patch) | |
tree | 4c5df9bf6e2a88657fd0d873cad55134aed72b21 | |
parent | 75a4cdfc8afc10fed80e43fb1ba31c7edaf6e361 (diff) | |
parent | b59c42734837f6cb987e97d60e56e096c8d4d40a (diff) | |
download | yosys-c2866780d2ee82334649237f77a89900fa0de4bc.tar.gz yosys-c2866780d2ee82334649237f77a89900fa0de4bc.tar.bz2 yosys-c2866780d2ee82334649237f77a89900fa0de4bc.zip |
Merge pull request #2973 from YosysHQ/micko/optional_extensions
Make Verific extensions optional
-rw-r--r-- | Makefile | 7 | ||||
-rw-r--r-- | frontends/verific/verific.cc | 7 |
2 files changed, 12 insertions, 2 deletions
@@ -18,6 +18,7 @@ ENABLE_READLINE := 1 ENABLE_EDITLINE := 0 ENABLE_GHDL := 0 ENABLE_VERIFIC := 0 +DISABLE_VERIFIC_EXTENSIONS := 0 ENABLE_COVER := 1 ENABLE_LIBYOSYS := 0 ENABLE_PROTOBUF := 0 @@ -498,7 +499,11 @@ endif ifeq ($(ENABLE_VERIFIC),1) VERIFIC_DIR ?= /usr/local/src/verific_lib -VERIFIC_COMPONENTS ?= verilog vhdl database util containers hier_tree extensions +VERIFIC_COMPONENTS ?= verilog vhdl database util containers hier_tree +ifneq ($(DISABLE_VERIFIC_EXTENSIONS),1) +VERIFIC_COMPONENTS += extensions +CXXFLAGS += -DYOSYSHQ_VERIFIC_EXTENSIONS +endif CXXFLAGS += $(patsubst %,-I$(VERIFIC_DIR)/%,$(VERIFIC_COMPONENTS)) -DYOSYS_ENABLE_VERIFIC ifeq ($(OS), Darwin) LDLIBS += $(patsubst %,$(VERIFIC_DIR)/%/*-mac.a,$(VERIFIC_COMPONENTS)) -lz diff --git a/frontends/verific/verific.cc b/frontends/verific/verific.cc index 5a10568c7..1b8bc1b51 100644 --- a/frontends/verific/verific.cc +++ b/frontends/verific/verific.cc @@ -50,7 +50,9 @@ USING_YOSYS_NAMESPACE #include "VhdlUnits.h" #include "VeriLibrary.h" +#ifdef YOSYSHQ_VERIFIC_EXTENSIONS #include "InitialAssertions.h" +#endif #ifndef YOSYSHQ_VERIFIC_API_VERSION # error "Only YosysHQ flavored Verific is supported. Please contact office@yosyshq.com for commercial support for Yosys+Verific." @@ -1961,7 +1963,9 @@ void verific_import(Design *design, const std::map<std::string,std::string> &par for (const auto &i : parameters) verific_params.Insert(i.first.c_str(), i.second.c_str()); +#ifdef YOSYSHQ_VERIFIC_EXTENSIONS InitialAssertions::Rewrite("work", &verific_params); +#endif if (top.empty()) { netlists = hier_tree::ElaborateAll(&veri_libs, &vhdl_libs, &verific_params); @@ -2847,8 +2851,9 @@ struct VerificPass : public Pass { std::set<std::string> top_mod_names; +#ifdef YOSYSHQ_VERIFIC_EXTENSIONS InitialAssertions::Rewrite(work, ¶meters); - +#endif if (mode_all) { log("Running hier_tree::ElaborateAll().\n"); |