Commit e2af27f1 by Alan Mishchenko

Sweeper internal dumping.

parent 74893bf3
...@@ -1192,6 +1192,7 @@ extern Vec_Int_t * Gia_SweeperCondVector( Gia_Man_t * p ); ...@@ -1192,6 +1192,7 @@ extern Vec_Int_t * Gia_SweeperCondVector( Gia_Man_t * p );
extern int Gia_SweeperCondCheckUnsat( Gia_Man_t * p ); extern int Gia_SweeperCondCheckUnsat( Gia_Man_t * p );
extern int Gia_SweeperCheckEquiv( Gia_Man_t * p, int ProbeId1, int ProbeId2 ); extern int Gia_SweeperCheckEquiv( Gia_Man_t * p, int ProbeId1, int ProbeId2 );
extern Gia_Man_t * Gia_SweeperExtractUserLogic( Gia_Man_t * p, Vec_Int_t * vProbeIds, Vec_Ptr_t * vInNames, Vec_Ptr_t * vOutNames ); extern Gia_Man_t * Gia_SweeperExtractUserLogic( Gia_Man_t * p, Vec_Int_t * vProbeIds, Vec_Ptr_t * vInNames, Vec_Ptr_t * vOutNames );
extern void Gia_SweeperLogicDump( Gia_Man_t * p, Vec_Int_t * vProbeIds, int fDumpConds, char * pFileName );
extern Gia_Man_t * Gia_SweeperCleanup( Gia_Man_t * p, char * pCommLime ); extern Gia_Man_t * Gia_SweeperCleanup( Gia_Man_t * p, char * pCommLime );
extern Vec_Int_t * Gia_SweeperGraft( Gia_Man_t * pDst, Vec_Int_t * vProbes, Gia_Man_t * pSrc ); extern Vec_Int_t * Gia_SweeperGraft( Gia_Man_t * pDst, Vec_Int_t * vProbes, Gia_Man_t * pSrc );
extern int Gia_SweeperFraig( Gia_Man_t * p, Vec_Int_t * vProbeIds, char * pCommLime, int nWords, int nConfs, int fVerify, int fVerbose ); extern int Gia_SweeperFraig( Gia_Man_t * p, Vec_Int_t * vProbeIds, char * pCommLime, int nWords, int nConfs, int fVerify, int fVerbose );
......
...@@ -416,6 +416,38 @@ Gia_Man_t * Gia_SweeperExtractUserLogic( Gia_Man_t * p, Vec_Int_t * vProbeIds, V ...@@ -416,6 +416,38 @@ Gia_Man_t * Gia_SweeperExtractUserLogic( Gia_Man_t * p, Vec_Int_t * vProbeIds, V
/**Function************************************************************* /**Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
***********************************************************************/
void Gia_SweeperLogicDump( Gia_Man_t * p, Vec_Int_t * vProbeIds, int fDumpConds, char * pFileName )
{
Gia_Man_t * pGiaOuts;
pGiaOuts = Gia_SweeperExtractUserLogic( p, vProbeIds, NULL, NULL );
if ( fDumpConds )
{
Vec_Int_t * vProbeConds = Gia_SweeperCondVector( p );
Gia_Man_t * pGiaCond = Gia_SweeperExtractUserLogic( p, vProbeConds, NULL, NULL );
Gia_ManDupAppendShare( pGiaOuts, pGiaCond );
pGiaOuts->nConstrs = Gia_ManPoNum(pGiaCond);
Gia_ManHashStop( pGiaOuts );
Gia_ManStop( pGiaCond );
}
Gia_AigerWrite( pGiaOuts, pFileName, 0, 0 );
Gia_ManStop( pGiaOuts );
printf( "Dumped logic cones" );
if ( fDumpConds )
printf( " and conditions" );
printf( " into file \"%s\".\n", pFileName );
}
/**Function*************************************************************
Synopsis [Sweeper cleanup.] Synopsis [Sweeper cleanup.]
Description [Returns new GIA with sweeper defined, which is the same Description [Returns new GIA with sweeper defined, which is the same
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment