mirror of https://github.com/openXC7/prjxray.git
simpleroute: better stack overflow message, dont remember previous route
Signed-off-by: John McMaster <johndmcmaster@gmail.com>
This commit is contained in:
parent
8148cd0d71
commit
9849e537a5
|
|
@ -68,8 +68,6 @@ print("Processing PIPs..")
|
||||||
|
|
||||||
node_node_pip = dict()
|
node_node_pip = dict()
|
||||||
reverse_node_node = dict()
|
reverse_node_node = dict()
|
||||||
blocked_nodes = set()
|
|
||||||
active_pips = set()
|
|
||||||
|
|
||||||
for tile_type in ["int_l", "int_r"]:
|
for tile_type in ["int_l", "int_r"]:
|
||||||
with open("%s/%s/segbits_%s.db" % (os.getenv("XRAY_DATABASE_DIR"),
|
with open("%s/%s/segbits_%s.db" % (os.getenv("XRAY_DATABASE_DIR"),
|
||||||
|
|
@ -90,6 +88,9 @@ for tile_type in ["int_l", "int_r"]:
|
||||||
|
|
||||||
|
|
||||||
def route(args):
|
def route(args):
|
||||||
|
active_pips = set()
|
||||||
|
blocked_nodes = set()
|
||||||
|
|
||||||
for argidx in range((len(args)) // 2):
|
for argidx in range((len(args)) // 2):
|
||||||
src_tile, src_wire = args[2 * argidx].split("/")
|
src_tile, src_wire = args[2 * argidx].split("/")
|
||||||
dst_tile, dst_wire = args[2 * argidx + 1].split("/")
|
dst_tile, dst_wire = args[2 * argidx + 1].split("/")
|
||||||
|
|
@ -115,7 +116,10 @@ def route(args):
|
||||||
next_nodes.add(nn)
|
next_nodes.add(nn)
|
||||||
write_scores(next_nodes, count + 1)
|
write_scores(next_nodes, count + 1)
|
||||||
|
|
||||||
write_scores(set([dst_node]), 1)
|
try:
|
||||||
|
write_scores(set([dst_node]), 1)
|
||||||
|
except RecursionError as e:
|
||||||
|
raise Exception("Could not find route for node %s" % (dst_node,)) from None
|
||||||
print(" route length: %d" % node_scores[src_node])
|
print(" route length: %d" % node_scores[src_node])
|
||||||
|
|
||||||
count = 0
|
count = 0
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue