summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author couriersud <couriersud@gmx.org>2019-04-22 02:11:49 +0200
committer couriersud <couriersud@gmx.org>2019-04-22 14:49:43 +0200
commit70c4265970c6e071556f71cefb368920dd69dc84 (patch)
tree5683d2448dd2376e605d79fd6d5ea106eaeecbd1
parent49c05c24a2c5a0ac574048559914ecf10d15bcd6 (diff)
netlist: minor optimization. (nw)
-rw-r--r--src/lib/netlist/nl_base.h15
-rw-r--r--src/lib/netlist/plib/pconfig.h2
2 files changed, 10 insertions, 7 deletions
diff --git a/src/lib/netlist/nl_base.h b/src/lib/netlist/nl_base.h
index 4c9d402d718..75048a6b9b3 100644
--- a/src/lib/netlist/nl_base.h
+++ b/src/lib/netlist/nl_base.h
@@ -1302,6 +1302,7 @@ namespace netlist
public plib::state_manager_t::callback_t
{
public:
+ using base_queue = timed_queue<pqentry_t<net_t *, netlist_time>, false, true>;
using entry_t = pqentry_t<net_t *, netlist_time>;
explicit queue_t(netlist_state_t &nl);
virtual ~queue_t() noexcept = default;
@@ -1501,21 +1502,23 @@ namespace netlist
#if 0
const detail::queue_t &queue() const NL_NOEXCEPT { return m_queue; }
detail::queue_t &queue() NL_NOEXCEPT { return m_queue; }
-#else
+#endif
+
void qpush(detail::queue_t::entry_t && e) noexcept
{
- if (!m_stats)
- m_queue.push_nostats(std::move(e));
- else
- m_queue.push(std::move(e));
+ switch (m_stats)
+ {
+ case false: m_queue.push_nostats(std::move(e)); break;
+ case true: m_queue.push(std::move(e)); break;
+ }
}
+
template <class R>
void qremove(const R &elem) noexcept
{
m_queue.remove(elem);
}
-#endif
/* Control functions */
void stop();
diff --git a/src/lib/netlist/plib/pconfig.h b/src/lib/netlist/plib/pconfig.h
index d66b342f815..411b8189dd1 100644
--- a/src/lib/netlist/plib/pconfig.h
+++ b/src/lib/netlist/plib/pconfig.h
@@ -13,7 +13,7 @@
* RDTSCP.
*/
#ifndef PHAS_RDTSCP
-#define PHAS_RDTSCP (1)
+#define PHAS_RDTSCP (0)
#endif
/*