ecp5: Keep "visited" local

Otherwise it keeps growing boundless and slows down small arcs
This commit is contained in:
Matt Johnston 2021-12-10 22:10:33 +08:00
parent 80dd442412
commit fc5b34254f

View File

@ -108,7 +108,6 @@ struct Router1
dict<arc_key, pool<WireId>> arc_to_wires; dict<arc_key, pool<WireId>> arc_to_wires;
pool<arc_key> queued_arcs; pool<arc_key> queued_arcs;
dict<WireId, QueuedWire> visited;
std::priority_queue<QueuedWire, std::vector<QueuedWire>, QueuedWire::Greater> queue; std::priority_queue<QueuedWire, std::vector<QueuedWire>, QueuedWire::Greater> queue;
dict<WireId, int> wireScores; dict<WireId, int> wireScores;
@ -503,7 +502,7 @@ struct Router1
std::priority_queue<QueuedWire, std::vector<QueuedWire>, QueuedWire::Greater> new_queue; std::priority_queue<QueuedWire, std::vector<QueuedWire>, QueuedWire::Greater> new_queue;
queue.swap(new_queue); queue.swap(new_queue);
} }
visited.clear(); dict<WireId, QueuedWire> visited;
// A* main loop // A* main loop