diff options
author | 2020-10-02 19:57:51 +0200 | |
---|---|---|
committer | 2020-10-02 19:58:32 +0200 | |
commit | c0754c36cde594fdd70c35b334d3bdfbb8ee085c (patch) | |
tree | 2b3ff4cb72bc47009292dd36dedc7bbb787cb702 /src/lib/netlist/core | |
parent | c797d55aafead48ec97baa4b6314d72aca6dec72 (diff) |
netlist: simplify code.
Diffstat (limited to 'src/lib/netlist/core')
-rw-r--r-- | src/lib/netlist/core/exec.h | 11 | ||||
-rw-r--r-- | src/lib/netlist/core/queue.h | 3 |
2 files changed, 6 insertions, 8 deletions
diff --git a/src/lib/netlist/core/exec.h b/src/lib/netlist/core/exec.h index be796ab95fd..50c718e3da6 100644 --- a/src/lib/netlist/core/exec.h +++ b/src/lib/netlist/core/exec.h @@ -38,10 +38,8 @@ namespace netlist void process_queue(netlist_time_ext delta) noexcept; void abort_current_queue_slice() noexcept { - if (!NL_USE_QUEUE_STATS || !m_use_stats) - m_queue.retime<false>(detail::queue_t::entry_t(m_time, nullptr)); - else - m_queue.retime<true>(detail::queue_t::entry_t(m_time, nullptr)); + qremove(nullptr); + qpush(m_time, nullptr); } const detail::queue_t &queue() const noexcept { return m_queue; } @@ -95,9 +93,8 @@ namespace netlist const log_type &log() const noexcept { return m_state.log(); } void print_stats() const; - bool use_stats() const { return m_use_stats; } - bool stats_enabled() const noexcept { return m_use_stats; } + constexpr bool stats_enabled() const noexcept { return m_use_stats; } void enable_stats(bool val) noexcept { m_use_stats = val; } private: @@ -115,8 +112,8 @@ namespace netlist //PALIGNAS_CACHELINE() //PALIGNAS(16) - detail::queue_t m_queue; bool m_use_stats; + detail::queue_t m_queue; // performance plib::pperftime_t<true> m_stat_mainloop; plib::pperfcount_t<true> m_perf_out_processed; diff --git a/src/lib/netlist/core/queue.h b/src/lib/netlist/core/queue.h index 7e38c3f0ef9..350329ed3f1 100644 --- a/src/lib/netlist/core/queue.h +++ b/src/lib/netlist/core/queue.h @@ -21,12 +21,13 @@ #include <unordered_map> #include <utility> #include <vector> +#include <queue> namespace netlist { namespace detail { // Use timed_queue_heap to use stdc++ heap functions instead of linear processing. - // This slows down processing by about 25% on a Kaby Lake. + // This slows down processing by about 35% on a Kaby Lake. // template <class T, bool TS> // using timed_queue = plib::timed_queue_heap<T, TS>; |