diff options
Diffstat (limited to 'src/lib/netlist/core/queue.h')
-rw-r--r-- | src/lib/netlist/core/queue.h | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/src/lib/netlist/core/queue.h b/src/lib/netlist/core/queue.h index ea76c6851bc..b4b0c427c83 100644 --- a/src/lib/netlist/core/queue.h +++ b/src/lib/netlist/core/queue.h @@ -27,11 +27,11 @@ namespace netlist::detail { // Use timed_queue_heap to use stdc++ heap functions instead of linear processing. // 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>; + // template <class A, class T, bool TS> + // using timed_queue = plib::timed_queue_heap<A, T, TS>; - template <class T, bool TS> - using timed_queue = plib::timed_queue_linear<T, TS>; + template <typename A, typename T, bool TS> + using timed_queue = plib::timed_queue_linear<A, T, TS>; // ----------------------------------------------------------------------------- // queue_t @@ -40,19 +40,19 @@ namespace netlist::detail // We don't need a thread-safe queue currently. Parallel processing of // solvers will update inputs after parallel processing. - template <typename O, bool TS> + template <typename A, typename O, bool TS> class queue_base : - public timed_queue<plib::pqentry_t<netlist_time_ext, O *>, false>, + public timed_queue<A, plib::pqentry_t<netlist_time_ext, O *>, false>, public plib::state_manager_t::callback_t { public: using entry_t = plib::pqentry_t<netlist_time_ext, O *>; - using base_queue = timed_queue<entry_t, false>; + using base_queue = timed_queue<A, entry_t, false>; using id_delegate = plib::pmfp<std::size_t (const O *)>; using obj_delegate = plib::pmfp<O * (std::size_t)>; - explicit queue_base(std::size_t size, id_delegate get_id, obj_delegate get_obj) - : timed_queue<plib::pqentry_t<netlist_time_ext, O *>, false>(size) + explicit queue_base(A &arena, std::size_t size, id_delegate get_id, obj_delegate get_obj) + : timed_queue<A, plib::pqentry_t<netlist_time_ext, O *>, false>(arena, size) , m_qsize(0) , m_times(size) , m_net_ids(size) @@ -103,7 +103,7 @@ namespace netlist::detail obj_delegate m_obj_by_id; }; - using queue_t = queue_base<net_t, false>; + using queue_t = queue_base<device_arena, net_t, false>; } // namespace netlist::detail |