summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/netlist/nl_base.cpp
diff options
context:
space:
mode:
author couriersud <couriersud@gmx.org>2020-08-22 16:25:26 +0200
committer couriersud <couriersud@gmx.org>2020-08-22 16:31:22 +0200
commitb0e0ac2b24b74ec70fc2ea9fb8387f77602913a7 (patch)
treec0cb1c4c9fb3cde42f45ab9558b686211f531491 /src/lib/netlist/nl_base.cpp
parent9e401f0b3ef8953bbae78a9e71f051df8917df44 (diff)
netlist: Add NETLIB_DELEGATE_NOOP()
* This should be used for inputs which do not need a handler. * Examples are data inputs which are only accessed on a clock change.
Diffstat (limited to 'src/lib/netlist/nl_base.cpp')
-rw-r--r--src/lib/netlist/nl_base.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/lib/netlist/nl_base.cpp b/src/lib/netlist/nl_base.cpp
index 9cb12d06668..f4aaaa930cc 100644
--- a/src/lib/netlist/nl_base.cpp
+++ b/src/lib/netlist/nl_base.cpp
@@ -332,9 +332,10 @@ namespace netlist
std::vector<const nldelegate *> t;
log().verbose("Using default startup strategy");
for (auto &n : m_nets)
+ {
+ n->update_inputs(); // only used if USE_COPY_INSTEAD_OF_REFERENCE == 1
for (auto & term : n->core_terms())
{
- n->update_inputs(); // only used if USE_COPY_INSTEAD_OF_REFERENCE == 1
if (!plib::container::contains(t, &term->delegate()))
{
t.push_back(&term->delegate());
@@ -345,6 +346,7 @@ namespace netlist
if (!plib::container::contains(devices_called, dev))
devices_called.push_back(dev);
}
+ }
log().verbose("Devices not yet updated:");
for (auto &dev : m_devices)
if (!plib::container::contains(devices_called, dev.second.get()))
@@ -747,8 +749,6 @@ namespace netlist
nldelegate delegate)
: logic_t(dev, aname, STATE_INP_ACTIVE, delegate)
{
- if (!delegate.is_set())
- throw nl_exception("delegate not set for {1}", this->name());
state().setup().register_term(*this);
}