summaryrefslogtreecommitdiffstats
path: root/src/proof
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2013-07-07 22:37:29 -0700
committerAlan Mishchenko <alanmi@berkeley.edu>2013-07-07 22:37:29 -0700
commit07d3351c31c6f76f77c6881cd2fd7294eca091c1 (patch)
tree38ce5b3e527198328688c64aadad0e152971b1e0 /src/proof
parent76875cd18d4bf9bb5437a3cb391c82514151532e (diff)
downloadabc-07d3351c31c6f76f77c6881cd2fd7294eca091c1.tar.gz
abc-07d3351c31c6f76f77c6881cd2fd7294eca091c1.tar.bz2
abc-07d3351c31c6f76f77c6881cd2fd7294eca091c1.zip
Adding timeout to AIG rewriting inside 'int'.
Diffstat (limited to 'src/proof')
-rw-r--r--src/proof/int/intCore.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/proof/int/intCore.c b/src/proof/int/intCore.c
index dedf987e..1418402c 100644
--- a/src/proof/int/intCore.c
+++ b/src/proof/int/intCore.c
@@ -280,10 +280,22 @@ p->timeEqu += Abc_Clock() - clk;
clk = Abc_Clock();
if ( p->pInterNew )
{
+ Abc_PrintTime( 1, "Before time", clock() - clkTotal );
+ // save the timeout value
+ p->pInterNew->Time2Quit = nTimeNewOut;
// Ioa_WriteAiger( p->pInterNew, "interpol.aig", 0, 0 );
p->pInterNew = Dar_ManRwsat( pAigTemp = p->pInterNew, 1, 0 );
// p->pInterNew = Dar_ManRwsat( pAigTemp = p->pInterNew, 0, 0 );
+ Abc_PrintTime( 1, "After time", clock() - clkTotal );
Aig_ManStop( pAigTemp );
+ if ( p->pInterNew == NULL )
+ {
+ printf( "Reached timeout (%d seconds) during rewriting.\n", pPars->nSecLimit );
+ p->timeTotal = Abc_Clock() - clkTotal;
+ Inter_ManStop( p, 1 );
+ Inter_CheckStop( pCheck );
+ return -1;
+ }
}
p->timeRwr += Abc_Clock() - clk;