summaryrefslogtreecommitdiffstats
path: root/scripts/niklas.py
diff options
context:
space:
mode:
authorBaruch Sterin <baruchs@gmail.com>2013-12-07 00:44:57 -0800
committerBaruch Sterin <baruchs@gmail.com>2013-12-07 00:44:57 -0800
commit3c3589125df23188c75a3960bf276832b5504a94 (patch)
tree65d92f3d14d6060cc06895a23fcae00230750cb8 /scripts/niklas.py
parent549cd2c6da549cffdf5e310ed73e11112c52c70c (diff)
downloadabc-3c3589125df23188c75a3960bf276832b5504a94.tar.gz
abc-3c3589125df23188c75a3960bf276832b5504a94.tar.bz2
abc-3c3589125df23188c75a3960bf276832b5504a94.zip
fixes for simple_livness
Diffstat (limited to 'scripts/niklas.py')
-rw-r--r--scripts/niklas.py41
1 files changed, 25 insertions, 16 deletions
diff --git a/scripts/niklas.py b/scripts/niklas.py
index cfab8acc..882bd0a7 100644
--- a/scripts/niklas.py
+++ b/scripts/niklas.py
@@ -47,21 +47,24 @@ def parse_bip_status(status):
def run_bip(args, aiger):
- with temp_file_names(1) as tmpnames:
-
- args = [
- 'bip',
- '-abc',
- '-input=%s'%aiger,
- '-output=%s'%tmpnames[0],
- ] + args;
-
- rc = subprocess.call(args, preexec_fn=pyabc._set_death_signal)
-
- if rc!=0:
- return None
+ import redirect
+ with redirect.redirect():
+
+ with temp_file_names(1) as tmpnames:
+
+ args = [
+ 'bip',
+ '-abc',
+ '-input=%s'%aiger,
+ '-output=%s'%tmpnames[0],
+ ] + args;
- return parse_bip_status(tmpnames[0])
+ rc = subprocess.call(args, preexec_fn=pyabc._set_death_signal)
+
+ if rc!=0:
+ return None
+
+ return parse_bip_status(tmpnames[0])
from pyaig import AIG, read_aiger, write_aiger, utils
@@ -95,17 +98,23 @@ def run_niklas_single(aiger, simplify, report_result, timeout=None):
for id, res in splitter:
+ print 'NIKLAS: process %d finished with'%id, res
+
if id == sleep_id:
+ print 'NIKLAS: timeout'
return False
- if id == simplifier_id:
+ elif id == simplifier_id:
+ print 'NIKLAS: simplify ended'
if not res:
continue
+ print 'NIKLAS: killing'
splitter.kill(kill_if_simplified)
splitter.fork_all( simplified_funcs )
continue
- if report_result(res):
+ elif report_result(res):
+ print 'NIKLAS: RESULT'
return True
return False