Commit 5a692406 by Alan Mishchenko

Version abc80207

parent 7174787a
<html>
<body>
<pre>
<h1>Build Log</h1>
<h3>
--------------------Configuration: abc - Win32 Release--------------------
</h3>
<h3>Command Lines</h3>
Creating temporary file "C:\DOCUME~1\alanmi\LOCALS~1\Temp\RSPB41.tmp" with contents
[
/nologo /ML /W3 /GX /O2 /I "src/base/abc" /I "src/base/abci" /I "src/base/cmd" /I "src/base/io" /I "src/base/main" /I "src/base/ver" /I "src/bdd/cudd" /I "src/bdd/dsd" /I "src/bdd/epd" /I "src/bdd/mtr" /I "src/bdd/parse" /I "src/bdd/reo" /I "src/bdd/cas" /I "src/map/fpga" /I "src/map/mapper" /I "src/map/mio" /I "src/map/super" /I "src/map/if" /I "src/map/pcm" /I "src/map/ply" /I "src/misc/extra" /I "src/misc/mvc" /I "src/misc/st" /I "src/misc/util" /I "src/misc/espresso" /I "src/misc/nm" /I "src/misc/vec" /I "src/misc/hash" /I "src/opt/cut" /I "src/opt/dec" /I "src/opt/fxu" /I "src/opt/rwr" /I "src/opt/sim" /I "src/opt/ret" /I "src/opt/res" /I "src/opt/lpk" /I "src/sat/bsat" /I "src/sat/csat" /I "src/sat/msat" /I "src/sat/fraig" /I "src/aig/ivy" /I "src/aig/hop" /I "src/aig/rwt" /I "src/aig/deco" /I "src/aig/mem" /I "src/aig/dar" /I "src/aig/fra" /I "src/aig/cnf" /I "src/aig/csw" /I "src/aig/ioa" /I "src/aig/aig" /I "src/aig/kit" /I "src/aig/bdc" /I "src/aig/bar" /I "src/aig/ntl" /I "src/aig/tim" /I "src/opt/mfs" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /D "__STDC__" /FR"Release/" /Fp"Release/abc.pch" /YX /Fo"Release/" /Fd"Release/" /FD /c
"C:\_projects\abc\src\opt\mfs\mfsMan.c"
]
Creating command line "cl.exe @C:\DOCUME~1\alanmi\LOCALS~1\Temp\RSPB41.tmp"
Creating temporary file "C:\DOCUME~1\alanmi\LOCALS~1\Temp\RSPB42.tmp" with contents
[
kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /profile /machine:I386 /out:"_TEST/abc.exe"
.\Release\abcAig.obj
.\Release\abcBlifMv.obj
.\Release\abcCheck.obj
.\Release\abcDfs.obj
.\Release\abcFanio.obj
.\Release\abcFunc.obj
.\Release\abcHie.obj
.\Release\abcLatch.obj
.\Release\abcLib.obj
.\Release\abcMinBase.obj
.\Release\abcNames.obj
.\Release\abcNetlist.obj
.\Release\abcNtk.obj
.\Release\abcObj.obj
.\Release\abcRefs.obj
.\Release\abcShow.obj
.\Release\abcSop.obj
.\Release\abcUtil.obj
.\Release\abc.obj
.\Release\abcAttach.obj
.\Release\abcAuto.obj
.\Release\abcBalance.obj
.\Release\abcBmc.obj
.\Release\abcCas.obj
.\Release\abcClpBdd.obj
.\Release\abcClpSop.obj
.\Release\abcCut.obj
.\Release\abcDar.obj
.\Release\abcDebug.obj
.\Release\abcDress.obj
.\Release\abcDsd.obj
.\Release\abcEspresso.obj
.\Release\abcExtract.obj
.\Release\abcFpga.obj
.\Release\abcFpgaFast.obj
.\Release\abcFraig.obj
.\Release\abcFxu.obj
.\Release\abcGen.obj
.\Release\abcHaig.obj
.\Release\abcIf.obj
.\Release\abcIvy.obj
.\Release\abcLut.obj
.\Release\abcMap.obj
.\Release\abcMeasure.obj
.\Release\abcMini.obj
.\Release\abcMiter.obj
.\Release\abcMulti.obj
.\Release\abcMv.obj
.\Release\abcNtbdd.obj
.\Release\abcOdc.obj
.\Release\abcOrder.obj
.\Release\abcPart.obj
.\Release\abcPrint.obj
.\Release\abcProve.obj
.\Release\abcQbf.obj
.\Release\abcQuant.obj
.\Release\abcRec.obj
.\Release\abcReconv.obj
.\Release\abcRefactor.obj
.\Release\abcRenode.obj
.\Release\abcReorder.obj
.\Release\abcRestruct.obj
.\Release\abcResub.obj
.\Release\abcRewrite.obj
.\Release\abcRr.obj
.\Release\abcSat.obj
.\Release\abcStrash.obj
.\Release\abcSweep.obj
.\Release\abcSymm.obj
.\Release\abcTiming.obj
.\Release\abcUnate.obj
.\Release\abcUnreach.obj
.\Release\abcVerify.obj
.\Release\abcXsim.obj
.\Release\cmd.obj
.\Release\cmdAlias.obj
.\Release\cmdApi.obj
.\Release\cmdFlag.obj
.\Release\cmdHist.obj
.\Release\cmdUtils.obj
.\Release\io.obj
.\Release\ioReadAiger.obj
.\Release\ioReadBaf.obj
.\Release\ioReadBench.obj
.\Release\ioReadBlif.obj
.\Release\ioReadBlifAig.obj
.\Release\ioReadBlifMv.obj
.\Release\ioReadDsd.obj
.\Release\ioReadEdif.obj
.\Release\ioReadEqn.obj
.\Release\ioReadPla.obj
.\Release\ioReadVerilog.obj
.\Release\ioUtil.obj
.\Release\ioWriteAiger.obj
.\Release\ioWriteBaf.obj
.\Release\ioWriteBench.obj
.\Release\ioWriteBlif.obj
.\Release\ioWriteBlifMv.obj
.\Release\ioWriteCnf.obj
.\Release\ioWriteDot.obj
.\Release\ioWriteEqn.obj
.\Release\ioWriteGml.obj
.\Release\ioWriteList.obj
.\Release\ioWritePla.obj
.\Release\ioWriteVerilog.obj
.\Release\libSupport.obj
.\Release\main.obj
.\Release\mainFrame.obj
.\Release\mainInit.obj
.\Release\mainUtils.obj
.\Release\verCore.obj
.\Release\verFormula.obj
.\Release\verParse.obj
.\Release\verStream.obj
.\Release\cuddAddAbs.obj
.\Release\cuddAddApply.obj
.\Release\cuddAddFind.obj
.\Release\cuddAddInv.obj
.\Release\cuddAddIte.obj
.\Release\cuddAddNeg.obj
.\Release\cuddAddWalsh.obj
.\Release\cuddAndAbs.obj
.\Release\cuddAnneal.obj
.\Release\cuddApa.obj
.\Release\cuddAPI.obj
.\Release\cuddApprox.obj
.\Release\cuddBddAbs.obj
.\Release\cuddBddCorr.obj
.\Release\cuddBddIte.obj
.\Release\cuddBridge.obj
.\Release\cuddCache.obj
.\Release\cuddCheck.obj
.\Release\cuddClip.obj
.\Release\cuddCof.obj
.\Release\cuddCompose.obj
.\Release\cuddDecomp.obj
.\Release\cuddEssent.obj
.\Release\cuddExact.obj
.\Release\cuddExport.obj
.\Release\cuddGenCof.obj
.\Release\cuddGenetic.obj
.\Release\cuddGroup.obj
.\Release\cuddHarwell.obj
.\Release\cuddInit.obj
.\Release\cuddInteract.obj
.\Release\cuddLCache.obj
.\Release\cuddLevelQ.obj
.\Release\cuddLinear.obj
.\Release\cuddLiteral.obj
.\Release\cuddMatMult.obj
.\Release\cuddPriority.obj
.\Release\cuddRead.obj
.\Release\cuddRef.obj
.\Release\cuddReorder.obj
.\Release\cuddSat.obj
.\Release\cuddSign.obj
.\Release\cuddSolve.obj
.\Release\cuddSplit.obj
.\Release\cuddSubsetHB.obj
.\Release\cuddSubsetSP.obj
.\Release\cuddSymmetry.obj
.\Release\cuddTable.obj
.\Release\cuddUtil.obj
.\Release\cuddWindow.obj
.\Release\cuddZddCount.obj
.\Release\cuddZddFuncs.obj
.\Release\cuddZddGroup.obj
.\Release\cuddZddIsop.obj
.\Release\cuddZddLin.obj
.\Release\cuddZddMisc.obj
.\Release\cuddZddPort.obj
.\Release\cuddZddReord.obj
.\Release\cuddZddSetop.obj
.\Release\cuddZddSymm.obj
.\Release\cuddZddUtil.obj
.\Release\epd.obj
.\Release\mtrBasic.obj
.\Release\mtrGroup.obj
.\Release\parseCore.obj
.\Release\parseEqn.obj
.\Release\parseStack.obj
.\Release\dsdApi.obj
.\Release\dsdCheck.obj
.\Release\dsdLocal.obj
.\Release\dsdMan.obj
.\Release\dsdProc.obj
.\Release\dsdTree.obj
.\Release\reoApi.obj
.\Release\reoCore.obj
.\Release\reoProfile.obj
.\Release\reoShuffle.obj
.\Release\reoSift.obj
.\Release\reoSwap.obj
.\Release\reoTest.obj
.\Release\reoTransfer.obj
.\Release\reoUnits.obj
.\Release\casCore.obj
.\Release\casDec.obj
.\Release\msatActivity.obj
.\Release\msatClause.obj
.\Release\msatClauseVec.obj
.\Release\msatMem.obj
.\Release\msatOrderH.obj
.\Release\msatQueue.obj
.\Release\msatRead.obj
.\Release\msatSolverApi.obj
.\Release\msatSolverCore.obj
.\Release\msatSolverIo.obj
.\Release\msatSolverSearch.obj
.\Release\msatSort.obj
.\Release\msatVec.obj
.\Release\fraigApi.obj
.\Release\fraigCanon.obj
.\Release\fraigChoice.obj
.\Release\fraigFanout.obj
.\Release\fraigFeed.obj
.\Release\fraigMan.obj
.\Release\fraigMem.obj
.\Release\fraigNode.obj
.\Release\fraigPrime.obj
.\Release\fraigSat.obj
.\Release\fraigTable.obj
.\Release\fraigUtil.obj
.\Release\fraigVec.obj
.\Release\csat_apis.obj
.\Release\satInter.obj
.\Release\satInterA.obj
.\Release\satMem.obj
.\Release\satSolver.obj
.\Release\satStore.obj
.\Release\satTrace.obj
.\Release\satUtil.obj
.\Release\pr.obj
.\Release\fxu.obj
.\Release\fxuCreate.obj
.\Release\fxuHeapD.obj
.\Release\fxuHeapS.obj
.\Release\fxuList.obj
.\Release\fxuMatrix.obj
.\Release\fxuPair.obj
.\Release\fxuPrint.obj
.\Release\fxuReduce.obj
.\Release\fxuSelect.obj
.\Release\fxuSingle.obj
.\Release\fxuUpdate.obj
.\Release\rwrDec.obj
.\Release\rwrEva.obj
.\Release\rwrExp.obj
.\Release\rwrLib.obj
.\Release\rwrMan.obj
.\Release\rwrPrint.obj
.\Release\rwrTemp.obj
.\Release\rwrUtil.obj
.\Release\cutApi.obj
.\Release\cutCut.obj
.\Release\cutExpand.obj
.\Release\cutMan.obj
.\Release\cutMerge.obj
.\Release\cutNode.obj
.\Release\cutOracle.obj
.\Release\cutPre22.obj
.\Release\cutSeq.obj
.\Release\cutTruth.obj
.\Release\decAbc.obj
.\Release\decFactor.obj
.\Release\decMan.obj
.\Release\decPrint.obj
.\Release\decUtil.obj
.\Release\simMan.obj
.\Release\simSat.obj
.\Release\simSeq.obj
.\Release\simSupp.obj
.\Release\simSwitch.obj
.\Release\simSym.obj
.\Release\simSymSat.obj
.\Release\simSymSim.obj
.\Release\simSymStr.obj
.\Release\simUtils.obj
.\Release\retArea.obj
.\Release\retCore.obj
.\Release\retDelay.obj
.\Release\retFlow.obj
.\Release\retIncrem.obj
.\Release\retInit.obj
.\Release\retLvalue.obj
.\Release\resCore.obj
.\Release\resDivs.obj
.\Release\resFilter.obj
.\Release\resSat.obj
.\Release\resSim.obj
.\Release\resStrash.obj
.\Release\resWin.obj
.\Release\lpkAbcDec.obj
.\Release\lpkAbcDsd.obj
.\Release\lpkAbcMux.obj
.\Release\lpkAbcUtil.obj
.\Release\lpkCore.obj
.\Release\lpkCut.obj
.\Release\lpkMan.obj
.\Release\lpkMap.obj
.\Release\lpkMulti.obj
.\Release\lpkMux.obj
.\Release\lpkSets.obj
.\Release\fretFlow.obj
.\Release\fretInit.obj
.\Release\fretMain.obj
.\Release\fretTime.obj
.\Release\mfsCore.obj
.\Release\mfsMan.obj
.\Release\mfsSat.obj
.\Release\mfsStrash.obj
.\Release\mfsWin.obj
.\Release\fpga.obj
.\Release\fpgaCore.obj
.\Release\fpgaCreate.obj
.\Release\fpgaCut.obj
.\Release\fpgaCutUtils.obj
.\Release\fpgaFanout.obj
.\Release\fpgaLib.obj
.\Release\fpgaMatch.obj
.\Release\fpgaSwitch.obj
.\Release\fpgaTime.obj
.\Release\fpgaTruth.obj
.\Release\fpgaUtils.obj
.\Release\fpgaVec.obj
.\Release\mapper.obj
.\Release\mapperCanon.obj
.\Release\mapperCore.obj
.\Release\mapperCreate.obj
.\Release\mapperCut.obj
.\Release\mapperCutUtils.obj
.\Release\mapperFanout.obj
.\Release\mapperLib.obj
.\Release\mapperMatch.obj
.\Release\mapperRefs.obj
.\Release\mapperSuper.obj
.\Release\mapperSwitch.obj
.\Release\mapperTable.obj
.\Release\mapperTime.obj
.\Release\mapperTree.obj
.\Release\mapperTruth.obj
.\Release\mapperUtils.obj
.\Release\mapperVec.obj
.\Release\mio.obj
.\Release\mioApi.obj
.\Release\mioFunc.obj
.\Release\mioRead.obj
.\Release\mioUtils.obj
.\Release\super.obj
.\Release\superAnd.obj
.\Release\superGate.obj
.\Release\superWrite.obj
.\Release\ifCore.obj
.\Release\ifCut.obj
.\Release\ifMan.obj
.\Release\ifMap.obj
.\Release\ifReduce.obj
.\Release\ifTime.obj
.\Release\ifTruth.obj
.\Release\ifUtil.obj
.\Release\pcmCore.obj
.\Release\pcmCut.obj
.\Release\pcmMan.obj
.\Release\pcmMap.obj
.\Release\pcmReduce.obj
.\Release\pcmTime.obj
.\Release\pcmTruth.obj
.\Release\pcmUtil.obj
.\Release\plyAbc.obj
.\Release\plyAig.obj
.\Release\plyIter.obj
.\Release\plyLib.obj
.\Release\plyMan.obj
.\Release\plyMap.obj
.\Release\plyNtk.obj
.\Release\plyPar.obj
.\Release\extraBddAuto.obj
.\Release\extraBddCas.obj
.\Release\extraBddKmap.obj
.\Release\extraBddMisc.obj
.\Release\extraBddSymm.obj
.\Release\extraBddUnate.obj
.\Release\extraUtilBitMatrix.obj
.\Release\extraUtilCanon.obj
.\Release\extraUtilFile.obj
.\Release\extraUtilMemory.obj
.\Release\extraUtilMisc.obj
.\Release\extraUtilProgress.obj
.\Release\extraUtilReader.obj
.\Release\extraUtilTruth.obj
.\Release\extraUtilUtil.obj
.\Release\st.obj
.\Release\stmm.obj
.\Release\mvc.obj
.\Release\mvcApi.obj
.\Release\mvcCompare.obj
.\Release\mvcContain.obj
.\Release\mvcCover.obj
.\Release\mvcCube.obj
.\Release\mvcDivide.obj
.\Release\mvcDivisor.obj
.\Release\mvcList.obj
.\Release\mvcLits.obj
.\Release\mvcMan.obj
.\Release\mvcOpAlg.obj
.\Release\mvcOpBool.obj
.\Release\mvcPrint.obj
.\Release\mvcSort.obj
.\Release\mvcUtils.obj
.\Release\cofactor.obj
.\Release\cols.obj
.\Release\compl.obj
.\Release\contain.obj
.\Release\cubehack.obj
.\Release\cubestr.obj
.\Release\cvrin.obj
.\Release\cvrm.obj
.\Release\cvrmisc.obj
.\Release\cvrout.obj
.\Release\dominate.obj
.\Release\equiv.obj
.\Release\espresso.obj
.\Release\essen.obj
.\Release\exact.obj
.\Release\expand.obj
.\Release\gasp.obj
.\Release\gimpel.obj
.\Release\globals.obj
.\Release\hack.obj
.\Release\indep.obj
.\Release\irred.obj
.\Release\map.obj
.\Release\matrix.obj
.\Release\mincov.obj
.\Release\opo.obj
.\Release\pair.obj
.\Release\part.obj
.\Release\primes.obj
.\Release\reduce.obj
.\Release\rows.obj
.\Release\set.obj
.\Release\setc.obj
.\Release\sharp.obj
.\Release\sminterf.obj
.\Release\solution.obj
.\Release\sparse.obj
.\Release\unate.obj
.\Release\verify.obj
.\Release\nmApi.obj
.\Release\nmTable.obj
.\Release\hopBalance.obj
.\Release\hopCheck.obj
.\Release\hopDfs.obj
.\Release\hopMan.obj
.\Release\hopMem.obj
.\Release\hopObj.obj
.\Release\hopOper.obj
.\Release\hopTable.obj
.\Release\hopUtil.obj
.\Release\ivyBalance.obj
.\Release\ivyCanon.obj
.\Release\ivyCheck.obj
.\Release\ivyCut.obj
.\Release\ivyCutTrav.obj
.\Release\ivyDfs.obj
.\Release\ivyDsd.obj
.\Release\ivyFanout.obj
.\Release\ivyFastMap.obj
.\Release\ivyFraig.obj
.\Release\ivyHaig.obj
.\Release\ivyMan.obj
.\Release\ivyMem.obj
.\Release\ivyMulti.obj
.\Release\ivyObj.obj
.\Release\ivyOper.obj
.\Release\ivyResyn.obj
.\Release\ivyRwr.obj
.\Release\ivySeq.obj
.\Release\ivyShow.obj
.\Release\ivyTable.obj
.\Release\ivyUtil.obj
.\Release\rwtDec.obj
.\Release\rwtMan.obj
.\Release\rwtUtil.obj
.\Release\mem.obj
.\Release\ioaReadAig.obj
.\Release\ioaUtil.obj
.\Release\ioaWriteAig.obj
.\Release\darBalance.obj
.\Release\darCore.obj
.\Release\darCut.obj
.\Release\darData.obj
.\Release\darLib.obj
.\Release\darMan.obj
.\Release\darPrec.obj
.\Release\darRefact.obj
.\Release\darResub.obj
.\Release\darScript.obj
.\Release\fraBmc.obj
.\Release\fraCec.obj
.\Release\fraClass.obj
.\Release\fraClau.obj
.\Release\fraClaus.obj
.\Release\fraCnf.obj
.\Release\fraCore.obj
.\Release\fraHot.obj
.\Release\fraImp.obj
.\Release\fraInd.obj
.\Release\fraIndVer.obj
.\Release\fraLcr.obj
.\Release\fraMan.obj
.\Release\fraPart.obj
.\Release\fraSat.obj
.\Release\fraSec.obj
.\Release\fraSim.obj
.\Release\cnfCore.obj
.\Release\cnfCut.obj
.\Release\cnfData.obj
.\Release\cnfMan.obj
.\Release\cnfMap.obj
.\Release\cnfPost.obj
.\Release\cnfUtil.obj
.\Release\cnfWrite.obj
.\Release\cswCore.obj
.\Release\cswCut.obj
.\Release\cswMan.obj
.\Release\cswTable.obj
.\Release\cloud.obj
.\Release\kitAig.obj
.\Release\kitBdd.obj
.\Release\kitCloud.obj
.\Release\kitDsd.obj
.\Release\kitFactor.obj
.\Release\kitGraph.obj
.\Release\kitHop.obj
.\Release\kitIsop.obj
.\Release\kitSop.obj
.\Release\kitTruth.obj
.\Release\bdcCore.obj
.\Release\bdcDec.obj
.\Release\bdcTable.obj
.\Release\aigCheck.obj
.\Release\aigCuts.obj
.\Release\aigDfs.obj
.\Release\aigFanout.obj
.\Release\aigFrames.obj
.\Release\aigHaig.obj
.\Release\aigInter.obj
.\Release\aigMan.obj
.\Release\aigMem.obj
.\Release\aigMffc.obj
.\Release\aigObj.obj
.\Release\aigOper.obj
.\Release\aigOrder.obj
.\Release\aigPart.obj
.\Release\aigRepr.obj
.\Release\aigRet.obj
.\Release\aigRetF.obj
.\Release\aigScl.obj
.\Release\aigSeq.obj
.\Release\aigShow.obj
.\Release\aigTable.obj
.\Release\aigTiming.obj
.\Release\aigTruth.obj
.\Release\aigTsim.obj
.\Release\aigUtil.obj
.\Release\aigWin.obj
.\Release\bar.obj
.\Release\ntlAig.obj
.\Release\ntlCheck.obj
.\Release\ntlDfs.obj
.\Release\ntlMan.obj
.\Release\ntlMap.obj
.\Release\ntlObj.obj
.\Release\ntlReadBlif.obj
.\Release\ntlTable.obj
.\Release\ntlTime.obj
.\Release\ntlWriteBlif.obj
.\Release\tim.obj
.\Release\mfsDiv.obj
.\Release\mfsResub.obj
.\Release\mfsInter.obj
]
Creating command line "link.exe @C:\DOCUME~1\alanmi\LOCALS~1\Temp\RSPB42.tmp"
<h3>Output Window</h3>
Compiling...
mfsMan.c
Linking...
Creating temporary file "C:\DOCUME~1\alanmi\LOCALS~1\Temp\RSPB44.tmp" with contents
[
/nologo /o"Release/abc.bsc"
.\Release\abcAig.sbr
.\Release\abcBlifMv.sbr
.\Release\abcCheck.sbr
.\Release\abcDfs.sbr
.\Release\abcFanio.sbr
.\Release\abcFunc.sbr
.\Release\abcHie.sbr
.\Release\abcLatch.sbr
.\Release\abcLib.sbr
.\Release\abcMinBase.sbr
.\Release\abcNames.sbr
.\Release\abcNetlist.sbr
.\Release\abcNtk.sbr
.\Release\abcObj.sbr
.\Release\abcRefs.sbr
.\Release\abcShow.sbr
.\Release\abcSop.sbr
.\Release\abcUtil.sbr
.\Release\abc.sbr
.\Release\abcAttach.sbr
.\Release\abcAuto.sbr
.\Release\abcBalance.sbr
.\Release\abcBmc.sbr
.\Release\abcCas.sbr
.\Release\abcClpBdd.sbr
.\Release\abcClpSop.sbr
.\Release\abcCut.sbr
.\Release\abcDar.sbr
.\Release\abcDebug.sbr
.\Release\abcDress.sbr
.\Release\abcDsd.sbr
.\Release\abcEspresso.sbr
.\Release\abcExtract.sbr
.\Release\abcFpga.sbr
.\Release\abcFpgaFast.sbr
.\Release\abcFraig.sbr
.\Release\abcFxu.sbr
.\Release\abcGen.sbr
.\Release\abcHaig.sbr
.\Release\abcIf.sbr
.\Release\abcIvy.sbr
.\Release\abcLut.sbr
.\Release\abcMap.sbr
.\Release\abcMeasure.sbr
.\Release\abcMini.sbr
.\Release\abcMiter.sbr
.\Release\abcMulti.sbr
.\Release\abcMv.sbr
.\Release\abcNtbdd.sbr
.\Release\abcOdc.sbr
.\Release\abcOrder.sbr
.\Release\abcPart.sbr
.\Release\abcPrint.sbr
.\Release\abcProve.sbr
.\Release\abcQbf.sbr
.\Release\abcQuant.sbr
.\Release\abcRec.sbr
.\Release\abcReconv.sbr
.\Release\abcRefactor.sbr
.\Release\abcRenode.sbr
.\Release\abcReorder.sbr
.\Release\abcRestruct.sbr
.\Release\abcResub.sbr
.\Release\abcRewrite.sbr
.\Release\abcRr.sbr
.\Release\abcSat.sbr
.\Release\abcStrash.sbr
.\Release\abcSweep.sbr
.\Release\abcSymm.sbr
.\Release\abcTiming.sbr
.\Release\abcUnate.sbr
.\Release\abcUnreach.sbr
.\Release\abcVerify.sbr
.\Release\abcXsim.sbr
.\Release\cmd.sbr
.\Release\cmdAlias.sbr
.\Release\cmdApi.sbr
.\Release\cmdFlag.sbr
.\Release\cmdHist.sbr
.\Release\cmdUtils.sbr
.\Release\io.sbr
.\Release\ioReadAiger.sbr
.\Release\ioReadBaf.sbr
.\Release\ioReadBench.sbr
.\Release\ioReadBlif.sbr
.\Release\ioReadBlifAig.sbr
.\Release\ioReadBlifMv.sbr
.\Release\ioReadDsd.sbr
.\Release\ioReadEdif.sbr
.\Release\ioReadEqn.sbr
.\Release\ioReadPla.sbr
.\Release\ioReadVerilog.sbr
.\Release\ioUtil.sbr
.\Release\ioWriteAiger.sbr
.\Release\ioWriteBaf.sbr
.\Release\ioWriteBench.sbr
.\Release\ioWriteBlif.sbr
.\Release\ioWriteBlifMv.sbr
.\Release\ioWriteCnf.sbr
.\Release\ioWriteDot.sbr
.\Release\ioWriteEqn.sbr
.\Release\ioWriteGml.sbr
.\Release\ioWriteList.sbr
.\Release\ioWritePla.sbr
.\Release\ioWriteVerilog.sbr
.\Release\libSupport.sbr
.\Release\main.sbr
.\Release\mainFrame.sbr
.\Release\mainInit.sbr
.\Release\mainUtils.sbr
.\Release\verCore.sbr
.\Release\verFormula.sbr
.\Release\verParse.sbr
.\Release\verStream.sbr
.\Release\cuddAddAbs.sbr
.\Release\cuddAddApply.sbr
.\Release\cuddAddFind.sbr
.\Release\cuddAddInv.sbr
.\Release\cuddAddIte.sbr
.\Release\cuddAddNeg.sbr
.\Release\cuddAddWalsh.sbr
.\Release\cuddAndAbs.sbr
.\Release\cuddAnneal.sbr
.\Release\cuddApa.sbr
.\Release\cuddAPI.sbr
.\Release\cuddApprox.sbr
.\Release\cuddBddAbs.sbr
.\Release\cuddBddCorr.sbr
.\Release\cuddBddIte.sbr
.\Release\cuddBridge.sbr
.\Release\cuddCache.sbr
.\Release\cuddCheck.sbr
.\Release\cuddClip.sbr
.\Release\cuddCof.sbr
.\Release\cuddCompose.sbr
.\Release\cuddDecomp.sbr
.\Release\cuddEssent.sbr
.\Release\cuddExact.sbr
.\Release\cuddExport.sbr
.\Release\cuddGenCof.sbr
.\Release\cuddGenetic.sbr
.\Release\cuddGroup.sbr
.\Release\cuddHarwell.sbr
.\Release\cuddInit.sbr
.\Release\cuddInteract.sbr
.\Release\cuddLCache.sbr
.\Release\cuddLevelQ.sbr
.\Release\cuddLinear.sbr
.\Release\cuddLiteral.sbr
.\Release\cuddMatMult.sbr
.\Release\cuddPriority.sbr
.\Release\cuddRead.sbr
.\Release\cuddRef.sbr
.\Release\cuddReorder.sbr
.\Release\cuddSat.sbr
.\Release\cuddSign.sbr
.\Release\cuddSolve.sbr
.\Release\cuddSplit.sbr
.\Release\cuddSubsetHB.sbr
.\Release\cuddSubsetSP.sbr
.\Release\cuddSymmetry.sbr
.\Release\cuddTable.sbr
.\Release\cuddUtil.sbr
.\Release\cuddWindow.sbr
.\Release\cuddZddCount.sbr
.\Release\cuddZddFuncs.sbr
.\Release\cuddZddGroup.sbr
.\Release\cuddZddIsop.sbr
.\Release\cuddZddLin.sbr
.\Release\cuddZddMisc.sbr
.\Release\cuddZddPort.sbr
.\Release\cuddZddReord.sbr
.\Release\cuddZddSetop.sbr
.\Release\cuddZddSymm.sbr
.\Release\cuddZddUtil.sbr
.\Release\epd.sbr
.\Release\mtrBasic.sbr
.\Release\mtrGroup.sbr
.\Release\parseCore.sbr
.\Release\parseEqn.sbr
.\Release\parseStack.sbr
.\Release\dsdApi.sbr
.\Release\dsdCheck.sbr
.\Release\dsdLocal.sbr
.\Release\dsdMan.sbr
.\Release\dsdProc.sbr
.\Release\dsdTree.sbr
.\Release\reoApi.sbr
.\Release\reoCore.sbr
.\Release\reoProfile.sbr
.\Release\reoShuffle.sbr
.\Release\reoSift.sbr
.\Release\reoSwap.sbr
.\Release\reoTest.sbr
.\Release\reoTransfer.sbr
.\Release\reoUnits.sbr
.\Release\casCore.sbr
.\Release\casDec.sbr
.\Release\msatActivity.sbr
.\Release\msatClause.sbr
.\Release\msatClauseVec.sbr
.\Release\msatMem.sbr
.\Release\msatOrderH.sbr
.\Release\msatQueue.sbr
.\Release\msatRead.sbr
.\Release\msatSolverApi.sbr
.\Release\msatSolverCore.sbr
.\Release\msatSolverIo.sbr
.\Release\msatSolverSearch.sbr
.\Release\msatSort.sbr
.\Release\msatVec.sbr
.\Release\fraigApi.sbr
.\Release\fraigCanon.sbr
.\Release\fraigChoice.sbr
.\Release\fraigFanout.sbr
.\Release\fraigFeed.sbr
.\Release\fraigMan.sbr
.\Release\fraigMem.sbr
.\Release\fraigNode.sbr
.\Release\fraigPrime.sbr
.\Release\fraigSat.sbr
.\Release\fraigTable.sbr
.\Release\fraigUtil.sbr
.\Release\fraigVec.sbr
.\Release\csat_apis.sbr
.\Release\satInter.sbr
.\Release\satInterA.sbr
.\Release\satMem.sbr
.\Release\satSolver.sbr
.\Release\satStore.sbr
.\Release\satTrace.sbr
.\Release\satUtil.sbr
.\Release\pr.sbr
.\Release\fxu.sbr
.\Release\fxuCreate.sbr
.\Release\fxuHeapD.sbr
.\Release\fxuHeapS.sbr
.\Release\fxuList.sbr
.\Release\fxuMatrix.sbr
.\Release\fxuPair.sbr
.\Release\fxuPrint.sbr
.\Release\fxuReduce.sbr
.\Release\fxuSelect.sbr
.\Release\fxuSingle.sbr
.\Release\fxuUpdate.sbr
.\Release\rwrDec.sbr
.\Release\rwrEva.sbr
.\Release\rwrExp.sbr
.\Release\rwrLib.sbr
.\Release\rwrMan.sbr
.\Release\rwrPrint.sbr
.\Release\rwrTemp.sbr
.\Release\rwrUtil.sbr
.\Release\cutApi.sbr
.\Release\cutCut.sbr
.\Release\cutExpand.sbr
.\Release\cutMan.sbr
.\Release\cutMerge.sbr
.\Release\cutNode.sbr
.\Release\cutOracle.sbr
.\Release\cutPre22.sbr
.\Release\cutSeq.sbr
.\Release\cutTruth.sbr
.\Release\decAbc.sbr
.\Release\decFactor.sbr
.\Release\decMan.sbr
.\Release\decPrint.sbr
.\Release\decUtil.sbr
.\Release\simMan.sbr
.\Release\simSat.sbr
.\Release\simSeq.sbr
.\Release\simSupp.sbr
.\Release\simSwitch.sbr
.\Release\simSym.sbr
.\Release\simSymSat.sbr
.\Release\simSymSim.sbr
.\Release\simSymStr.sbr
.\Release\simUtils.sbr
.\Release\retArea.sbr
.\Release\retCore.sbr
.\Release\retDelay.sbr
.\Release\retFlow.sbr
.\Release\retIncrem.sbr
.\Release\retInit.sbr
.\Release\retLvalue.sbr
.\Release\resCore.sbr
.\Release\resDivs.sbr
.\Release\resFilter.sbr
.\Release\resSat.sbr
.\Release\resSim.sbr
.\Release\resStrash.sbr
.\Release\resWin.sbr
.\Release\lpkAbcDec.sbr
.\Release\lpkAbcDsd.sbr
.\Release\lpkAbcMux.sbr
.\Release\lpkAbcUtil.sbr
.\Release\lpkCore.sbr
.\Release\lpkCut.sbr
.\Release\lpkMan.sbr
.\Release\lpkMap.sbr
.\Release\lpkMulti.sbr
.\Release\lpkMux.sbr
.\Release\lpkSets.sbr
.\Release\fretFlow.sbr
.\Release\fretInit.sbr
.\Release\fretMain.sbr
.\Release\fretTime.sbr
.\Release\mfsCore.sbr
.\Release\mfsMan.sbr
.\Release\mfsSat.sbr
.\Release\mfsStrash.sbr
.\Release\mfsWin.sbr
.\Release\fpga.sbr
.\Release\fpgaCore.sbr
.\Release\fpgaCreate.sbr
.\Release\fpgaCut.sbr
.\Release\fpgaCutUtils.sbr
.\Release\fpgaFanout.sbr
.\Release\fpgaLib.sbr
.\Release\fpgaMatch.sbr
.\Release\fpgaSwitch.sbr
.\Release\fpgaTime.sbr
.\Release\fpgaTruth.sbr
.\Release\fpgaUtils.sbr
.\Release\fpgaVec.sbr
.\Release\mapper.sbr
.\Release\mapperCanon.sbr
.\Release\mapperCore.sbr
.\Release\mapperCreate.sbr
.\Release\mapperCut.sbr
.\Release\mapperCutUtils.sbr
.\Release\mapperFanout.sbr
.\Release\mapperLib.sbr
.\Release\mapperMatch.sbr
.\Release\mapperRefs.sbr
.\Release\mapperSuper.sbr
.\Release\mapperSwitch.sbr
.\Release\mapperTable.sbr
.\Release\mapperTime.sbr
.\Release\mapperTree.sbr
.\Release\mapperTruth.sbr
.\Release\mapperUtils.sbr
.\Release\mapperVec.sbr
.\Release\mio.sbr
.\Release\mioApi.sbr
.\Release\mioFunc.sbr
.\Release\mioRead.sbr
.\Release\mioUtils.sbr
.\Release\super.sbr
.\Release\superAnd.sbr
.\Release\superGate.sbr
.\Release\superWrite.sbr
.\Release\ifCore.sbr
.\Release\ifCut.sbr
.\Release\ifMan.sbr
.\Release\ifMap.sbr
.\Release\ifReduce.sbr
.\Release\ifTime.sbr
.\Release\ifTruth.sbr
.\Release\ifUtil.sbr
.\Release\pcmCore.sbr
.\Release\pcmCut.sbr
.\Release\pcmMan.sbr
.\Release\pcmMap.sbr
.\Release\pcmReduce.sbr
.\Release\pcmTime.sbr
.\Release\pcmTruth.sbr
.\Release\pcmUtil.sbr
.\Release\plyAbc.sbr
.\Release\plyAig.sbr
.\Release\plyIter.sbr
.\Release\plyLib.sbr
.\Release\plyMan.sbr
.\Release\plyMap.sbr
.\Release\plyNtk.sbr
.\Release\plyPar.sbr
.\Release\extraBddAuto.sbr
.\Release\extraBddCas.sbr
.\Release\extraBddKmap.sbr
.\Release\extraBddMisc.sbr
.\Release\extraBddSymm.sbr
.\Release\extraBddUnate.sbr
.\Release\extraUtilBitMatrix.sbr
.\Release\extraUtilCanon.sbr
.\Release\extraUtilFile.sbr
.\Release\extraUtilMemory.sbr
.\Release\extraUtilMisc.sbr
.\Release\extraUtilProgress.sbr
.\Release\extraUtilReader.sbr
.\Release\extraUtilTruth.sbr
.\Release\extraUtilUtil.sbr
.\Release\st.sbr
.\Release\stmm.sbr
.\Release\mvc.sbr
.\Release\mvcApi.sbr
.\Release\mvcCompare.sbr
.\Release\mvcContain.sbr
.\Release\mvcCover.sbr
.\Release\mvcCube.sbr
.\Release\mvcDivide.sbr
.\Release\mvcDivisor.sbr
.\Release\mvcList.sbr
.\Release\mvcLits.sbr
.\Release\mvcMan.sbr
.\Release\mvcOpAlg.sbr
.\Release\mvcOpBool.sbr
.\Release\mvcPrint.sbr
.\Release\mvcSort.sbr
.\Release\mvcUtils.sbr
.\Release\cofactor.sbr
.\Release\cols.sbr
.\Release\compl.sbr
.\Release\contain.sbr
.\Release\cubehack.sbr
.\Release\cubestr.sbr
.\Release\cvrin.sbr
.\Release\cvrm.sbr
.\Release\cvrmisc.sbr
.\Release\cvrout.sbr
.\Release\dominate.sbr
.\Release\equiv.sbr
.\Release\espresso.sbr
.\Release\essen.sbr
.\Release\exact.sbr
.\Release\expand.sbr
.\Release\gasp.sbr
.\Release\gimpel.sbr
.\Release\globals.sbr
.\Release\hack.sbr
.\Release\indep.sbr
.\Release\irred.sbr
.\Release\map.sbr
.\Release\matrix.sbr
.\Release\mincov.sbr
.\Release\opo.sbr
.\Release\pair.sbr
.\Release\part.sbr
.\Release\primes.sbr
.\Release\reduce.sbr
.\Release\rows.sbr
.\Release\set.sbr
.\Release\setc.sbr
.\Release\sharp.sbr
.\Release\sminterf.sbr
.\Release\solution.sbr
.\Release\sparse.sbr
.\Release\unate.sbr
.\Release\verify.sbr
.\Release\nmApi.sbr
.\Release\nmTable.sbr
.\Release\hopBalance.sbr
.\Release\hopCheck.sbr
.\Release\hopDfs.sbr
.\Release\hopMan.sbr
.\Release\hopMem.sbr
.\Release\hopObj.sbr
.\Release\hopOper.sbr
.\Release\hopTable.sbr
.\Release\hopUtil.sbr
.\Release\ivyBalance.sbr
.\Release\ivyCanon.sbr
.\Release\ivyCheck.sbr
.\Release\ivyCut.sbr
.\Release\ivyCutTrav.sbr
.\Release\ivyDfs.sbr
.\Release\ivyDsd.sbr
.\Release\ivyFanout.sbr
.\Release\ivyFastMap.sbr
.\Release\ivyFraig.sbr
.\Release\ivyHaig.sbr
.\Release\ivyMan.sbr
.\Release\ivyMem.sbr
.\Release\ivyMulti.sbr
.\Release\ivyObj.sbr
.\Release\ivyOper.sbr
.\Release\ivyResyn.sbr
.\Release\ivyRwr.sbr
.\Release\ivySeq.sbr
.\Release\ivyShow.sbr
.\Release\ivyTable.sbr
.\Release\ivyUtil.sbr
.\Release\rwtDec.sbr
.\Release\rwtMan.sbr
.\Release\rwtUtil.sbr
.\Release\mem.sbr
.\Release\ioaReadAig.sbr
.\Release\ioaUtil.sbr
.\Release\ioaWriteAig.sbr
.\Release\darBalance.sbr
.\Release\darCore.sbr
.\Release\darCut.sbr
.\Release\darData.sbr
.\Release\darLib.sbr
.\Release\darMan.sbr
.\Release\darPrec.sbr
.\Release\darRefact.sbr
.\Release\darResub.sbr
.\Release\darScript.sbr
.\Release\fraBmc.sbr
.\Release\fraCec.sbr
.\Release\fraClass.sbr
.\Release\fraClau.sbr
.\Release\fraClaus.sbr
.\Release\fraCnf.sbr
.\Release\fraCore.sbr
.\Release\fraHot.sbr
.\Release\fraImp.sbr
.\Release\fraInd.sbr
.\Release\fraIndVer.sbr
.\Release\fraLcr.sbr
.\Release\fraMan.sbr
.\Release\fraPart.sbr
.\Release\fraSat.sbr
.\Release\fraSec.sbr
.\Release\fraSim.sbr
.\Release\cnfCore.sbr
.\Release\cnfCut.sbr
.\Release\cnfData.sbr
.\Release\cnfMan.sbr
.\Release\cnfMap.sbr
.\Release\cnfPost.sbr
.\Release\cnfUtil.sbr
.\Release\cnfWrite.sbr
.\Release\cswCore.sbr
.\Release\cswCut.sbr
.\Release\cswMan.sbr
.\Release\cswTable.sbr
.\Release\cloud.sbr
.\Release\kitAig.sbr
.\Release\kitBdd.sbr
.\Release\kitCloud.sbr
.\Release\kitDsd.sbr
.\Release\kitFactor.sbr
.\Release\kitGraph.sbr
.\Release\kitHop.sbr
.\Release\kitIsop.sbr
.\Release\kitSop.sbr
.\Release\kitTruth.sbr
.\Release\bdcCore.sbr
.\Release\bdcDec.sbr
.\Release\bdcTable.sbr
.\Release\aigCheck.sbr
.\Release\aigCuts.sbr
.\Release\aigDfs.sbr
.\Release\aigFanout.sbr
.\Release\aigFrames.sbr
.\Release\aigHaig.sbr
.\Release\aigInter.sbr
.\Release\aigMan.sbr
.\Release\aigMem.sbr
.\Release\aigMffc.sbr
.\Release\aigObj.sbr
.\Release\aigOper.sbr
.\Release\aigOrder.sbr
.\Release\aigPart.sbr
.\Release\aigRepr.sbr
.\Release\aigRet.sbr
.\Release\aigRetF.sbr
.\Release\aigScl.sbr
.\Release\aigSeq.sbr
.\Release\aigShow.sbr
.\Release\aigTable.sbr
.\Release\aigTiming.sbr
.\Release\aigTruth.sbr
.\Release\aigTsim.sbr
.\Release\aigUtil.sbr
.\Release\aigWin.sbr
.\Release\bar.sbr
.\Release\ntlAig.sbr
.\Release\ntlCheck.sbr
.\Release\ntlDfs.sbr
.\Release\ntlMan.sbr
.\Release\ntlMap.sbr
.\Release\ntlObj.sbr
.\Release\ntlReadBlif.sbr
.\Release\ntlTable.sbr
.\Release\ntlTime.sbr
.\Release\ntlWriteBlif.sbr
.\Release\tim.sbr
.\Release\mfsDiv.sbr
.\Release\mfsResub.sbr
.\Release\mfsInter.sbr]
Creating command line "bscmake.exe @C:\DOCUME~1\alanmi\LOCALS~1\Temp\RSPB44.tmp"
Creating browse info file...
<h3>Output Window</h3>
<h3>Results</h3>
abc.exe - 0 error(s), 0 warning(s)
</pre>
</body>
</html>
<html>
<body>
<pre>
<h1>Build Log</h1>
<h3>
--------------------Configuration: abclib - Win32 Debug--------------------
</h3>
<h3>Command Lines</h3>
Creating temporary file "C:\DOCUME~1\alanmi\LOCALS~1\Temp\RSP20AB.tmp" with contents
[
/nologo /MLd /W3 /Gm /GX /ZI /Od /I "src/base/abc" /I "src/base/abci" /I "src/base/cmd" /I "src/base/io" /I "src/base/main" /I "src/base/ver" /I "src/bdd/cudd" /I "src/bdd/dsd" /I "src/bdd/epd" /I "src/bdd/mtr" /I "src/bdd/parse" /I "src/bdd/reo" /I "src/bdd/cas" /I "src/map/fpga" /I "src/map/mapper" /I "src/map/mio" /I "src/map/super" /I "src/map/if" /I "src/map/pcm" /I "src/map/ply" /I "src/misc/extra" /I "src/misc/mvc" /I "src/misc/st" /I "src/misc/util" /I "src/misc/espresso" /I "src/misc/nm" /I "src/misc/vec" /I "src/misc/hash" /I "src/opt/cut" /I "src/opt/dec" /I "src/opt/fxu" /I "src/opt/rwr" /I "src/opt/sim" /I "src/opt/ret" /I "src/opt/res" /I "src/opt/lpk" /I "src/sat/bsat" /I "src/sat/csat" /I "src/sat/msat" /I "src/sat/fraig" /I "src/aig/ivy" /I "src/aig/hop" /I "src/aig/rwt" /I "src/aig/deco" /I "src/aig/mem" /I "src/aig/dar" /I "src/aig/fra" /I "src/aig/cnf" /I "src/aig/csw" /I "src/aig/ioa" /I "src/aig/aig" /I "src/aig/kit" /I "src/aig/bdc" /I "src/aig/bar" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /D "__STDC__" /D "HAVE_ASSERT_H" /FR"abclib\DebugLib/" /Fp"abclib\DebugLib/abclib.pch" /YX /Fo"abclib\DebugLib/" /Fd"abclib\DebugLib/" /FD /GZ /c
"C:\_projects\abc\src\base\abc\abcAig.c"
"C:\_projects\abc\src\base\abc\abcCheck.c"
"C:\_projects\abc\src\base\abc\abcDfs.c"
"C:\_projects\abc\src\base\abc\abcFanio.c"
"C:\_projects\abc\src\base\abc\abcFunc.c"
"C:\_projects\abc\src\base\abc\abcLatch.c"
"C:\_projects\abc\src\base\abc\abcLib.c"
"C:\_projects\abc\src\base\abc\abcMinBase.c"
"C:\_projects\abc\src\base\abc\abcNames.c"
"C:\_projects\abc\src\base\abc\abcNetlist.c"
"C:\_projects\abc\src\base\abc\abcNtk.c"
"C:\_projects\abc\src\base\abc\abcObj.c"
"C:\_projects\abc\src\base\abc\abcRefs.c"
"C:\_projects\abc\src\base\abc\abcShow.c"
"C:\_projects\abc\src\base\abc\abcSop.c"
"C:\_projects\abc\src\base\abc\abcUtil.c"
"C:\_projects\abc\src\base\abci\abc.c"
"C:\_projects\abc\src\base\abci\abcAttach.c"
"C:\_projects\abc\src\base\abci\abcAuto.c"
"C:\_projects\abc\src\base\abci\abcBalance.c"
"C:\_projects\abc\src\base\abci\abcBmc.c"
"C:\_projects\abc\src\base\abci\abcClpBdd.c"
"C:\_projects\abc\src\base\abci\abcClpSop.c"
"C:\_projects\abc\src\base\abci\abcCut.c"
"C:\_projects\abc\src\base\abci\abcDebug.c"
"C:\_projects\abc\src\base\abci\abcDress.c"
"C:\_projects\abc\src\base\abci\abcDsd.c"
"C:\_projects\abc\src\base\abci\abcEspresso.c"
"C:\_projects\abc\src\base\abci\abcExtract.c"
"C:\_projects\abc\src\base\abci\abcFpga.c"
"C:\_projects\abc\src\base\abci\abcFpgaFast.c"
"C:\_projects\abc\src\base\abci\abcFraig.c"
"C:\_projects\abc\src\base\abci\abcFxu.c"
"C:\_projects\abc\src\base\abci\abcGen.c"
"C:\_projects\abc\src\base\abci\abcIf.c"
"C:\_projects\abc\src\base\abci\abcIvy.c"
"C:\_projects\abc\src\base\abci\abcLut.c"
"C:\_projects\abc\src\base\abci\abcMap.c"
"C:\_projects\abc\src\base\abci\abcMini.c"
"C:\_projects\abc\src\base\abci\abcMiter.c"
"C:\_projects\abc\src\base\abci\abcMulti.c"
"C:\_projects\abc\src\base\abci\abcMv.c"
"C:\_projects\abc\src\base\abci\abcNtbdd.c"
"C:\_projects\abc\src\base\abci\abcOrder.c"
"C:\_projects\abc\src\base\abci\abcPrint.c"
"C:\_projects\abc\src\base\abci\abcProve.c"
"C:\_projects\abc\src\base\abci\abcReconv.c"
"C:\_projects\abc\src\base\abci\abcRefactor.c"
"C:\_projects\abc\src\base\abci\abcRenode.c"
"C:\_projects\abc\src\base\abci\abcReorder.c"
"C:\_projects\abc\src\base\abci\abcRestruct.c"
"C:\_projects\abc\src\base\abci\abcResub.c"
"C:\_projects\abc\src\base\abci\abcRewrite.c"
"C:\_projects\abc\src\base\abci\abcRr.c"
"C:\_projects\abc\src\base\abci\abcSat.c"
"C:\_projects\abc\src\base\abci\abcStrash.c"
"C:\_projects\abc\src\base\abci\abcSweep.c"
"C:\_projects\abc\src\base\abci\abcSymm.c"
"C:\_projects\abc\src\base\abci\abcTiming.c"
"C:\_projects\abc\src\base\abci\abcUnate.c"
"C:\_projects\abc\src\base\abci\abcUnreach.c"
"C:\_projects\abc\src\base\abci\abcVerify.c"
"C:\_projects\abc\src\base\abci\abcXsim.c"
"C:\_projects\abc\src\base\cmd\cmd.c"
"C:\_projects\abc\src\base\cmd\cmdAlias.c"
"C:\_projects\abc\src\base\cmd\cmdApi.c"
"C:\_projects\abc\src\base\cmd\cmdFlag.c"
"C:\_projects\abc\src\base\cmd\cmdHist.c"
"C:\_projects\abc\src\base\cmd\cmdUtils.c"
"C:\_projects\abc\src\base\io\io.c"
"C:\_projects\abc\src\base\io\ioReadAiger.c"
"C:\_projects\abc\src\base\io\ioReadBaf.c"
"C:\_projects\abc\src\base\io\ioReadBench.c"
"C:\_projects\abc\src\base\io\ioReadBlif.c"
"C:\_projects\abc\src\base\io\ioReadBlifAig.c"
"C:\_projects\abc\src\base\io\ioReadEdif.c"
"C:\_projects\abc\src\base\io\ioReadEqn.c"
"C:\_projects\abc\src\base\io\ioReadPla.c"
"C:\_projects\abc\src\base\io\ioUtil.c"
"C:\_projects\abc\src\base\io\ioWriteAiger.c"
"C:\_projects\abc\src\base\io\ioWriteBaf.c"
"C:\_projects\abc\src\base\io\ioWriteBench.c"
"C:\_projects\abc\src\base\io\ioWriteBlif.c"
"C:\_projects\abc\src\base\io\ioWriteCnf.c"
"C:\_projects\abc\src\base\io\ioWriteDot.c"
"C:\_projects\abc\src\base\io\ioWriteEqn.c"
"C:\_projects\abc\src\base\io\ioWriteGml.c"
"C:\_projects\abc\src\base\io\ioWriteList.c"
"C:\_projects\abc\src\base\io\ioWritePla.c"
"C:\_projects\abc\src\base\main\libSupport.c"
"C:\_projects\abc\src\base\main\main.c"
"C:\_projects\abc\src\base\main\mainFrame.c"
"C:\_projects\abc\src\base\main\mainInit.c"
"C:\_projects\abc\src\base\main\mainUtils.c"
"C:\_projects\abc\src\base\ver\verCore.c"
"C:\_projects\abc\src\base\ver\verFormula.c"
"C:\_projects\abc\src\base\ver\verParse.c"
"C:\_projects\abc\src\base\ver\verStream.c"
"C:\_projects\abc\src\bdd\cudd\cuddAddAbs.c"
"C:\_projects\abc\src\bdd\cudd\cuddAddApply.c"
"C:\_projects\abc\src\bdd\cudd\cuddAddFind.c"
"C:\_projects\abc\src\bdd\cudd\cuddAddInv.c"
"C:\_projects\abc\src\bdd\cudd\cuddAddIte.c"
"C:\_projects\abc\src\bdd\cudd\cuddAddNeg.c"
"C:\_projects\abc\src\bdd\cudd\cuddAddWalsh.c"
"C:\_projects\abc\src\bdd\cudd\cuddAndAbs.c"
"C:\_projects\abc\src\bdd\cudd\cuddAnneal.c"
"C:\_projects\abc\src\bdd\cudd\cuddApa.c"
"C:\_projects\abc\src\bdd\cudd\cuddAPI.c"
"C:\_projects\abc\src\bdd\cudd\cuddApprox.c"
"C:\_projects\abc\src\bdd\cudd\cuddBddAbs.c"
"C:\_projects\abc\src\bdd\cudd\cuddBddCorr.c"
"C:\_projects\abc\src\bdd\cudd\cuddBddIte.c"
"C:\_projects\abc\src\bdd\cudd\cuddBridge.c"
"C:\_projects\abc\src\bdd\cudd\cuddCache.c"
"C:\_projects\abc\src\bdd\cudd\cuddCheck.c"
"C:\_projects\abc\src\bdd\cudd\cuddClip.c"
"C:\_projects\abc\src\bdd\cudd\cuddCof.c"
"C:\_projects\abc\src\bdd\cudd\cuddCompose.c"
"C:\_projects\abc\src\bdd\cudd\cuddDecomp.c"
"C:\_projects\abc\src\bdd\cudd\cuddEssent.c"
"C:\_projects\abc\src\bdd\cudd\cuddExact.c"
"C:\_projects\abc\src\bdd\cudd\cuddExport.c"
"C:\_projects\abc\src\bdd\cudd\cuddGenCof.c"
"C:\_projects\abc\src\bdd\cudd\cuddGenetic.c"
"C:\_projects\abc\src\bdd\cudd\cuddGroup.c"
"C:\_projects\abc\src\bdd\cudd\cuddHarwell.c"
"C:\_projects\abc\src\bdd\cudd\cuddInit.c"
"C:\_projects\abc\src\bdd\cudd\cuddInteract.c"
"C:\_projects\abc\src\bdd\cudd\cuddLCache.c"
"C:\_projects\abc\src\bdd\cudd\cuddLevelQ.c"
"C:\_projects\abc\src\bdd\cudd\cuddLinear.c"
"C:\_projects\abc\src\bdd\cudd\cuddLiteral.c"
"C:\_projects\abc\src\bdd\cudd\cuddMatMult.c"
"C:\_projects\abc\src\bdd\cudd\cuddPriority.c"
"C:\_projects\abc\src\bdd\cudd\cuddRead.c"
"C:\_projects\abc\src\bdd\cudd\cuddRef.c"
"C:\_projects\abc\src\bdd\cudd\cuddReorder.c"
"C:\_projects\abc\src\bdd\cudd\cuddSat.c"
"C:\_projects\abc\src\bdd\cudd\cuddSign.c"
"C:\_projects\abc\src\bdd\cudd\cuddSolve.c"
"C:\_projects\abc\src\bdd\cudd\cuddSplit.c"
"C:\_projects\abc\src\bdd\cudd\cuddSubsetHB.c"
"C:\_projects\abc\src\bdd\cudd\cuddSubsetSP.c"
"C:\_projects\abc\src\bdd\cudd\cuddSymmetry.c"
"C:\_projects\abc\src\bdd\cudd\cuddTable.c"
"C:\_projects\abc\src\bdd\cudd\cuddUtil.c"
"C:\_projects\abc\src\bdd\cudd\cuddWindow.c"
"C:\_projects\abc\src\bdd\cudd\cuddZddCount.c"
"C:\_projects\abc\src\bdd\cudd\cuddZddFuncs.c"
"C:\_projects\abc\src\bdd\cudd\cuddZddGroup.c"
"C:\_projects\abc\src\bdd\cudd\cuddZddIsop.c"
"C:\_projects\abc\src\bdd\cudd\cuddZddLin.c"
"C:\_projects\abc\src\bdd\cudd\cuddZddMisc.c"
"C:\_projects\abc\src\bdd\cudd\cuddZddPort.c"
"C:\_projects\abc\src\bdd\cudd\cuddZddReord.c"
"C:\_projects\abc\src\bdd\cudd\cuddZddSetop.c"
"C:\_projects\abc\src\bdd\cudd\cuddZddSymm.c"
"C:\_projects\abc\src\bdd\cudd\cuddZddUtil.c"
"C:\_projects\abc\src\bdd\epd\epd.c"
"C:\_projects\abc\src\bdd\mtr\mtrBasic.c"
"C:\_projects\abc\src\bdd\mtr\mtrGroup.c"
"C:\_projects\abc\src\bdd\parse\parseCore.c"
"C:\_projects\abc\src\bdd\parse\parseEqn.c"
"C:\_projects\abc\src\bdd\parse\parseStack.c"
"C:\_projects\abc\src\bdd\dsd\dsdApi.c"
"C:\_projects\abc\src\bdd\dsd\dsdCheck.c"
"C:\_projects\abc\src\bdd\dsd\dsdLocal.c"
"C:\_projects\abc\src\bdd\dsd\dsdMan.c"
"C:\_projects\abc\src\bdd\dsd\dsdProc.c"
"C:\_projects\abc\src\bdd\dsd\dsdTree.c"
"C:\_projects\abc\src\bdd\reo\reoApi.c"
"C:\_projects\abc\src\bdd\reo\reoCore.c"
"C:\_projects\abc\src\bdd\reo\reoProfile.c"
"C:\_projects\abc\src\bdd\reo\reoSift.c"
"C:\_projects\abc\src\bdd\reo\reoSwap.c"
"C:\_projects\abc\src\bdd\reo\reoTest.c"
"C:\_projects\abc\src\bdd\reo\reoTransfer.c"
"C:\_projects\abc\src\bdd\reo\reoUnits.c"
"C:\_projects\abc\src\sat\msat\msatActivity.c"
"C:\_projects\abc\src\sat\msat\msatClause.c"
"C:\_projects\abc\src\sat\msat\msatClauseVec.c"
"C:\_projects\abc\src\sat\msat\msatMem.c"
"C:\_projects\abc\src\sat\msat\msatOrderH.c"
"C:\_projects\abc\src\sat\msat\msatQueue.c"
"C:\_projects\abc\src\sat\msat\msatRead.c"
"C:\_projects\abc\src\sat\msat\msatSolverApi.c"
"C:\_projects\abc\src\sat\msat\msatSolverCore.c"
"C:\_projects\abc\src\sat\msat\msatSolverIo.c"
"C:\_projects\abc\src\sat\msat\msatSolverSearch.c"
"C:\_projects\abc\src\sat\msat\msatSort.c"
"C:\_projects\abc\src\sat\msat\msatVec.c"
"C:\_projects\abc\src\sat\fraig\fraigApi.c"
"C:\_projects\abc\src\sat\fraig\fraigCanon.c"
"C:\_projects\abc\src\sat\fraig\fraigChoice.c"
"C:\_projects\abc\src\sat\fraig\fraigFanout.c"
"C:\_projects\abc\src\sat\fraig\fraigFeed.c"
"C:\_projects\abc\src\sat\fraig\fraigMan.c"
"C:\_projects\abc\src\sat\fraig\fraigMem.c"
"C:\_projects\abc\src\sat\fraig\fraigNode.c"
"C:\_projects\abc\src\sat\fraig\fraigPrime.c"
"C:\_projects\abc\src\sat\fraig\fraigSat.c"
"C:\_projects\abc\src\sat\fraig\fraigTable.c"
"C:\_projects\abc\src\sat\fraig\fraigUtil.c"
"C:\_projects\abc\src\sat\fraig\fraigVec.c"
"C:\_projects\abc\src\sat\csat\csat_apis.c"
"C:\_projects\abc\src\sat\bsat\satMem.c"
"C:\_projects\abc\src\sat\bsat\satSolver.c"
"C:\_projects\abc\src\sat\bsat\satUtil.c"
"C:\_projects\abc\src\opt\fxu\fxu.c"
"C:\_projects\abc\src\opt\fxu\fxuCreate.c"
"C:\_projects\abc\src\opt\fxu\fxuHeapD.c"
"C:\_projects\abc\src\opt\fxu\fxuHeapS.c"
"C:\_projects\abc\src\opt\fxu\fxuList.c"
"C:\_projects\abc\src\opt\fxu\fxuMatrix.c"
"C:\_projects\abc\src\opt\fxu\fxuPair.c"
"C:\_projects\abc\src\opt\fxu\fxuPrint.c"
"C:\_projects\abc\src\opt\fxu\fxuReduce.c"
"C:\_projects\abc\src\opt\fxu\fxuSelect.c"
"C:\_projects\abc\src\opt\fxu\fxuSingle.c"
"C:\_projects\abc\src\opt\fxu\fxuUpdate.c"
"C:\_projects\abc\src\opt\rwr\rwrDec.c"
"C:\_projects\abc\src\opt\rwr\rwrEva.c"
"C:\_projects\abc\src\opt\rwr\rwrExp.c"
"C:\_projects\abc\src\opt\rwr\rwrLib.c"
"C:\_projects\abc\src\opt\rwr\rwrMan.c"
"C:\_projects\abc\src\opt\rwr\rwrPrint.c"
"C:\_projects\abc\src\opt\rwr\rwrTemp.c"
"C:\_projects\abc\src\opt\rwr\rwrUtil.c"
"C:\_projects\abc\src\opt\cut\cutApi.c"
"C:\_projects\abc\src\opt\cut\cutCut.c"
"C:\_projects\abc\src\opt\cut\cutExpand.c"
"C:\_projects\abc\src\opt\cut\cutMan.c"
"C:\_projects\abc\src\opt\cut\cutMerge.c"
"C:\_projects\abc\src\opt\cut\cutNode.c"
"C:\_projects\abc\src\opt\cut\cutOracle.c"
"C:\_projects\abc\src\opt\cut\cutPre22.c"
"C:\_projects\abc\src\opt\cut\cutSeq.c"
"C:\_projects\abc\src\opt\cut\cutTruth.c"
"C:\_projects\abc\src\opt\dec\decAbc.c"
"C:\_projects\abc\src\opt\dec\decFactor.c"
"C:\_projects\abc\src\opt\dec\decMan.c"
"C:\_projects\abc\src\opt\dec\decPrint.c"
"C:\_projects\abc\src\opt\dec\decUtil.c"
"C:\_projects\abc\src\opt\sim\simMan.c"
"C:\_projects\abc\src\opt\sim\simSat.c"
"C:\_projects\abc\src\opt\sim\simSeq.c"
"C:\_projects\abc\src\opt\sim\simSupp.c"
"C:\_projects\abc\src\opt\sim\simSwitch.c"
"C:\_projects\abc\src\opt\sim\simSym.c"
"C:\_projects\abc\src\opt\sim\simSymSat.c"
"C:\_projects\abc\src\opt\sim\simSymSim.c"
"C:\_projects\abc\src\opt\sim\simSymStr.c"
"C:\_projects\abc\src\opt\sim\simUtils.c"
"C:\_projects\abc\src\opt\ret\retArea.c"
"C:\_projects\abc\src\opt\ret\retCore.c"
"C:\_projects\abc\src\opt\ret\retDelay.c"
"C:\_projects\abc\src\opt\ret\retFlow.c"
"C:\_projects\abc\src\opt\ret\retIncrem.c"
"C:\_projects\abc\src\opt\ret\retInit.c"
"C:\_projects\abc\src\opt\ret\retLvalue.c"
"C:\_projects\abc\src\map\fpga\fpga.c"
"C:\_projects\abc\src\map\fpga\fpgaCore.c"
"C:\_projects\abc\src\map\fpga\fpgaCreate.c"
"C:\_projects\abc\src\map\fpga\fpgaCut.c"
"C:\_projects\abc\src\map\fpga\fpgaCutUtils.c"
"C:\_projects\abc\src\map\fpga\fpgaFanout.c"
"C:\_projects\abc\src\map\fpga\fpgaLib.c"
"C:\_projects\abc\src\map\fpga\fpgaMatch.c"
"C:\_projects\abc\src\map\fpga\fpgaSwitch.c"
"C:\_projects\abc\src\map\fpga\fpgaTime.c"
"C:\_projects\abc\src\map\fpga\fpgaTruth.c"
"C:\_projects\abc\src\map\fpga\fpgaUtils.c"
"C:\_projects\abc\src\map\fpga\fpgaVec.c"
"C:\_projects\abc\src\map\mapper\mapper.c"
"C:\_projects\abc\src\map\mapper\mapperCanon.c"
"C:\_projects\abc\src\map\mapper\mapperCore.c"
"C:\_projects\abc\src\map\mapper\mapperCreate.c"
"C:\_projects\abc\src\map\mapper\mapperCut.c"
"C:\_projects\abc\src\map\mapper\mapperCutUtils.c"
"C:\_projects\abc\src\map\mapper\mapperFanout.c"
"C:\_projects\abc\src\map\mapper\mapperLib.c"
"C:\_projects\abc\src\map\mapper\mapperMatch.c"
"C:\_projects\abc\src\map\mapper\mapperRefs.c"
"C:\_projects\abc\src\map\mapper\mapperSuper.c"
"C:\_projects\abc\src\map\mapper\mapperSwitch.c"
"C:\_projects\abc\src\map\mapper\mapperTable.c"
"C:\_projects\abc\src\map\mapper\mapperTime.c"
"C:\_projects\abc\src\map\mapper\mapperTree.c"
"C:\_projects\abc\src\map\mapper\mapperTruth.c"
"C:\_projects\abc\src\map\mapper\mapperUtils.c"
"C:\_projects\abc\src\map\mapper\mapperVec.c"
"C:\_projects\abc\src\map\mio\mio.c"
"C:\_projects\abc\src\map\mio\mioApi.c"
"C:\_projects\abc\src\map\mio\mioFunc.c"
"C:\_projects\abc\src\map\mio\mioRead.c"
"C:\_projects\abc\src\map\mio\mioUtils.c"
"C:\_projects\abc\src\map\super\super.c"
"C:\_projects\abc\src\map\super\superAnd.c"
"C:\_projects\abc\src\map\super\superGate.c"
"C:\_projects\abc\src\map\super\superWrite.c"
"C:\_projects\abc\src\map\if\ifCore.c"
"C:\_projects\abc\src\map\if\ifCut.c"
"C:\_projects\abc\src\map\if\ifMan.c"
"C:\_projects\abc\src\map\if\ifMap.c"
"C:\_projects\abc\src\map\if\ifReduce.c"
"C:\_projects\abc\src\map\if\ifSeq.c"
"C:\_projects\abc\src\map\if\ifTime.c"
"C:\_projects\abc\src\map\if\ifTruth.c"
"C:\_projects\abc\src\map\if\ifUtil.c"
"C:\_projects\abc\src\misc\extra\extraBddAuto.c"
"C:\_projects\abc\src\misc\extra\extraBddKmap.c"
"C:\_projects\abc\src\misc\extra\extraBddMisc.c"
"C:\_projects\abc\src\misc\extra\extraBddSymm.c"
"C:\_projects\abc\src\misc\extra\extraBddUnate.c"
"C:\_projects\abc\src\misc\extra\extraUtilBitMatrix.c"
"C:\_projects\abc\src\misc\extra\extraUtilCanon.c"
"C:\_projects\abc\src\misc\extra\extraUtilFile.c"
"C:\_projects\abc\src\misc\extra\extraUtilMemory.c"
"C:\_projects\abc\src\misc\extra\extraUtilMisc.c"
"C:\_projects\abc\src\misc\extra\extraUtilProgress.c"
"C:\_projects\abc\src\misc\extra\extraUtilReader.c"
"C:\_projects\abc\src\misc\extra\extraUtilTruth.c"
"C:\_projects\abc\src\misc\extra\extraUtilUtil.c"
"C:\_projects\abc\src\misc\st\st.c"
"C:\_projects\abc\src\misc\st\stmm.c"
"C:\_projects\abc\src\misc\mvc\mvc.c"
"C:\_projects\abc\src\misc\mvc\mvcApi.c"
"C:\_projects\abc\src\misc\mvc\mvcCompare.c"
"C:\_projects\abc\src\misc\mvc\mvcContain.c"
"C:\_projects\abc\src\misc\mvc\mvcCover.c"
"C:\_projects\abc\src\misc\mvc\mvcCube.c"
"C:\_projects\abc\src\misc\mvc\mvcDivide.c"
"C:\_projects\abc\src\misc\mvc\mvcDivisor.c"
"C:\_projects\abc\src\misc\mvc\mvcList.c"
"C:\_projects\abc\src\misc\mvc\mvcLits.c"
"C:\_projects\abc\src\misc\mvc\mvcMan.c"
"C:\_projects\abc\src\misc\mvc\mvcOpAlg.c"
"C:\_projects\abc\src\misc\mvc\mvcOpBool.c"
"C:\_projects\abc\src\misc\mvc\mvcPrint.c"
"C:\_projects\abc\src\misc\mvc\mvcSort.c"
"C:\_projects\abc\src\misc\mvc\mvcUtils.c"
"C:\_projects\abc\src\misc\espresso\cofactor.c"
"C:\_projects\abc\src\misc\espresso\cols.c"
"C:\_projects\abc\src\misc\espresso\compl.c"
"C:\_projects\abc\src\misc\espresso\contain.c"
"C:\_projects\abc\src\misc\espresso\cubehack.c"
"C:\_projects\abc\src\misc\espresso\cubestr.c"
"C:\_projects\abc\src\misc\espresso\cvrin.c"
"C:\_projects\abc\src\misc\espresso\cvrm.c"
"C:\_projects\abc\src\misc\espresso\cvrmisc.c"
"C:\_projects\abc\src\misc\espresso\cvrout.c"
"C:\_projects\abc\src\misc\espresso\dominate.c"
"C:\_projects\abc\src\misc\espresso\equiv.c"
"C:\_projects\abc\src\misc\espresso\espresso.c"
"C:\_projects\abc\src\misc\espresso\essen.c"
"C:\_projects\abc\src\misc\espresso\exact.c"
"C:\_projects\abc\src\misc\espresso\expand.c"
"C:\_projects\abc\src\misc\espresso\gasp.c"
"C:\_projects\abc\src\misc\espresso\gimpel.c"
"C:\_projects\abc\src\misc\espresso\globals.c"
"C:\_projects\abc\src\misc\espresso\hack.c"
"C:\_projects\abc\src\misc\espresso\indep.c"
"C:\_projects\abc\src\misc\espresso\irred.c"
"C:\_projects\abc\src\misc\espresso\map.c"
"C:\_projects\abc\src\misc\espresso\matrix.c"
"C:\_projects\abc\src\misc\espresso\mincov.c"
"C:\_projects\abc\src\misc\espresso\opo.c"
"C:\_projects\abc\src\misc\espresso\pair.c"
"C:\_projects\abc\src\misc\espresso\part.c"
"C:\_projects\abc\src\misc\espresso\primes.c"
"C:\_projects\abc\src\misc\espresso\reduce.c"
"C:\_projects\abc\src\misc\espresso\rows.c"
"C:\_projects\abc\src\misc\espresso\set.c"
"C:\_projects\abc\src\misc\espresso\setc.c"
"C:\_projects\abc\src\misc\espresso\sharp.c"
"C:\_projects\abc\src\misc\espresso\sminterf.c"
"C:\_projects\abc\src\misc\espresso\solution.c"
"C:\_projects\abc\src\misc\espresso\sparse.c"
"C:\_projects\abc\src\misc\espresso\unate.c"
"C:\_projects\abc\src\misc\espresso\verify.c"
"C:\_projects\abc\src\misc\nm\nmApi.c"
"C:\_projects\abc\src\misc\nm\nmTable.c"
"C:\_projects\abc\src\aig\hop\hopBalance.c"
"C:\_projects\abc\src\aig\hop\hopCheck.c"
"C:\_projects\abc\src\aig\hop\hopDfs.c"
"C:\_projects\abc\src\aig\hop\hopMan.c"
"C:\_projects\abc\src\aig\hop\hopMem.c"
"C:\_projects\abc\src\aig\hop\hopObj.c"
"C:\_projects\abc\src\aig\hop\hopOper.c"
"C:\_projects\abc\src\aig\hop\hopTable.c"
"C:\_projects\abc\src\aig\hop\hopUtil.c"
"C:\_projects\abc\src\aig\ivy\ivyBalance.c"
"C:\_projects\abc\src\aig\ivy\ivyCanon.c"
"C:\_projects\abc\src\aig\ivy\ivyCheck.c"
"C:\_projects\abc\src\aig\ivy\ivyCut.c"
"C:\_projects\abc\src\aig\ivy\ivyCutTrav.c"
"C:\_projects\abc\src\aig\ivy\ivyDfs.c"
"C:\_projects\abc\src\aig\ivy\ivyDsd.c"
"C:\_projects\abc\src\aig\ivy\ivyFanout.c"
"C:\_projects\abc\src\aig\ivy\ivyFastMap.c"
"C:\_projects\abc\src\aig\ivy\ivyFraig.c"
"C:\_projects\abc\src\aig\ivy\ivyHaig.c"
"C:\_projects\abc\src\aig\ivy\ivyMan.c"
"C:\_projects\abc\src\aig\ivy\ivyMem.c"
"C:\_projects\abc\src\aig\ivy\ivyMulti.c"
"C:\_projects\abc\src\aig\ivy\ivyObj.c"
"C:\_projects\abc\src\aig\ivy\ivyOper.c"
"C:\_projects\abc\src\aig\ivy\ivyResyn.c"
"C:\_projects\abc\src\aig\ivy\ivyRwr.c"
"C:\_projects\abc\src\aig\ivy\ivySeq.c"
"C:\_projects\abc\src\aig\ivy\ivyShow.c"
"C:\_projects\abc\src\aig\ivy\ivyTable.c"
"C:\_projects\abc\src\aig\ivy\ivyUtil.c"
"C:\_projects\abc\src\aig\rwt\rwtDec.c"
"C:\_projects\abc\src\aig\rwt\rwtMan.c"
"C:\_projects\abc\src\aig\rwt\rwtUtil.c"
"C:\_projects\abc\src\aig\mem\mem.c"
"C:\_projects\abc\src\base\abc\abcHie.c"
"C:\_projects\abc\src\base\abc\abcBlifMv.c"
"C:\_projects\abc\src\base\abci\abcCas.c"
"C:\_projects\abc\src\base\abci\abcDar.c"
"C:\_projects\abc\src\base\abci\abcHaig.c"
"C:\_projects\abc\src\base\abci\abcMeasure.c"
"C:\_projects\abc\src\base\abci\abcOdc.c"
"C:\_projects\abc\src\base\abci\abcPart.c"
"C:\_projects\abc\src\base\abci\abcRec.c"
"C:\_projects\abc\src\base\abci\abcQbf.c"
"C:\_projects\abc\src\base\abci\abcQuant.c"
"C:\_projects\abc\src\base\io\ioReadDsd.c"
"C:\_projects\abc\src\base\io\ioReadBlifMv.c"
"C:\_projects\abc\src\base\io\ioReadVerilog.c"
"C:\_projects\abc\src\base\io\ioWriteVerilog.c"
"C:\_projects\abc\src\base\io\ioWriteBlifMv.c"
"C:\_projects\abc\src\bdd\cas\casDec.c"
"C:\_projects\abc\src\bdd\cas\casCore.c"
"C:\_projects\abc\src\sat\proof\pr.c"
"C:\_projects\abc\src\sat\bsat\satTrace.c"
"C:\_projects\abc\src\sat\bsat\satInter.c"
"C:\_projects\abc\src\sat\bsat\satStore.c"
"C:\_projects\abc\src\misc\extra\extraBddCas.c"
"C:\_projects\abc\src\aig\ioa\ioaWriteAig.c"
"C:\_projects\abc\src\aig\ioa\ioaReadAig.c"
"C:\_projects\abc\src\aig\ioa\ioaUtil.c"
"C:\_projects\abc\src\aig\dar\darBalance.c"
"C:\_projects\abc\src\aig\dar\darCore.c"
"C:\_projects\abc\src\aig\dar\darCut.c"
"C:\_projects\abc\src\aig\dar\darData.c"
"C:\_projects\abc\src\aig\dar\darLib.c"
"C:\_projects\abc\src\aig\dar\darMan.c"
"C:\_projects\abc\src\aig\dar\darPrec.c"
"C:\_projects\abc\src\aig\dar\darRefact.c"
"C:\_projects\abc\src\aig\dar\darResub.c"
"C:\_projects\abc\src\aig\dar\darScript.c"
"C:\_projects\abc\src\aig\fra\fraBmc.c"
"C:\_projects\abc\src\aig\fra\fraCec.c"
"C:\_projects\abc\src\aig\fra\fraClass.c"
"C:\_projects\abc\src\aig\fra\fraCnf.c"
"C:\_projects\abc\src\aig\fra\fraCore.c"
"C:\_projects\abc\src\aig\fra\fraImp.c"
"C:\_projects\abc\src\aig\fra\fraInd.c"
"C:\_projects\abc\src\aig\fra\fraLcr.c"
"C:\_projects\abc\src\aig\fra\fraMan.c"
"C:\_projects\abc\src\aig\fra\fraPart.c"
"C:\_projects\abc\src\aig\fra\fraSat.c"
"C:\_projects\abc\src\aig\fra\fraSec.c"
"C:\_projects\abc\src\aig\fra\fraSim.c"
"C:\_projects\abc\src\aig\cnf\cnfCore.c"
"C:\_projects\abc\src\aig\cnf\cnfCut.c"
"C:\_projects\abc\src\aig\cnf\cnfData.c"
"C:\_projects\abc\src\aig\cnf\cnfMan.c"
"C:\_projects\abc\src\aig\cnf\cnfMap.c"
"C:\_projects\abc\src\aig\cnf\cnfPost.c"
"C:\_projects\abc\src\aig\cnf\cnfUtil.c"
"C:\_projects\abc\src\aig\cnf\cnfWrite.c"
"C:\_projects\abc\src\aig\csw\cswCore.c"
"C:\_projects\abc\src\aig\csw\cswCut.c"
"C:\_projects\abc\src\aig\csw\cswMan.c"
"C:\_projects\abc\src\aig\csw\cswTable.c"
"C:\_projects\abc\src\aig\kit\cloud.c"
"C:\_projects\abc\src\aig\kit\kitAig.c"
"C:\_projects\abc\src\aig\kit\kitBdd.c"
"C:\_projects\abc\src\aig\kit\kitCloud.c"
"C:\_projects\abc\src\aig\kit\kitDsd.c"
"C:\_projects\abc\src\aig\kit\kitFactor.c"
"C:\_projects\abc\src\aig\kit\kitGraph.c"
"C:\_projects\abc\src\aig\kit\kitHop.c"
"C:\_projects\abc\src\aig\kit\kitIsop.c"
"C:\_projects\abc\src\aig\kit\kitSop.c"
"C:\_projects\abc\src\aig\kit\kitTruth.c"
"C:\_projects\abc\src\aig\bdc\bdcCore.c"
"C:\_projects\abc\src\aig\bdc\bdcDec.c"
"C:\_projects\abc\src\aig\bdc\bdcTable.c"
"C:\_projects\abc\src\aig\aig\aigCheck.c"
"C:\_projects\abc\src\aig\aig\aigDfs.c"
"C:\_projects\abc\src\aig\aig\aigFanout.c"
"C:\_projects\abc\src\aig\aig\aigMan.c"
"C:\_projects\abc\src\aig\aig\aigMem.c"
"C:\_projects\abc\src\aig\aig\aigMffc.c"
"C:\_projects\abc\src\aig\aig\aigObj.c"
"C:\_projects\abc\src\aig\aig\aigOper.c"
"C:\_projects\abc\src\aig\aig\aigOrder.c"
"C:\_projects\abc\src\aig\aig\aigPart.c"
"C:\_projects\abc\src\aig\aig\aigRepr.c"
"C:\_projects\abc\src\aig\aig\aigRet.c"
"C:\_projects\abc\src\aig\aig\aigScl.c"
"C:\_projects\abc\src\aig\aig\aigSeq.c"
"C:\_projects\abc\src\aig\aig\aigShow.c"
"C:\_projects\abc\src\aig\aig\aigTable.c"
"C:\_projects\abc\src\aig\aig\aigTime.c"
"C:\_projects\abc\src\aig\aig\aigTiming.c"
"C:\_projects\abc\src\aig\aig\aigTruth.c"
"C:\_projects\abc\src\aig\aig\aigTsim.c"
"C:\_projects\abc\src\aig\aig\aigUtil.c"
"C:\_projects\abc\src\aig\aig\aigWin.c"
"C:\_projects\abc\src\aig\bar\bar.c"
"C:\_projects\abc\src\opt\res\resCore.c"
"C:\_projects\abc\src\opt\res\resDivs.c"
"C:\_projects\abc\src\opt\res\resFilter.c"
"C:\_projects\abc\src\opt\res\resSat.c"
"C:\_projects\abc\src\opt\res\resSim.c"
"C:\_projects\abc\src\opt\res\resStrash.c"
"C:\_projects\abc\src\opt\res\resWin.c"
"C:\_projects\abc\src\opt\lpk\lpkAbcDec.c"
"C:\_projects\abc\src\opt\lpk\lpkAbcDsd.c"
"C:\_projects\abc\src\opt\lpk\lpkAbcMux.c"
"C:\_projects\abc\src\opt\lpk\lpkAbcUtil.c"
"C:\_projects\abc\src\opt\lpk\lpkCore.c"
"C:\_projects\abc\src\opt\lpk\lpkCut.c"
"C:\_projects\abc\src\opt\lpk\lpkMan.c"
"C:\_projects\abc\src\opt\lpk\lpkMap.c"
"C:\_projects\abc\src\opt\lpk\lpkMulti.c"
"C:\_projects\abc\src\opt\lpk\lpkMux.c"
"C:\_projects\abc\src\opt\lpk\lpkSets.c"
]
Creating command line "cl.exe @C:\DOCUME~1\alanmi\LOCALS~1\Temp\RSP20AB.tmp"
Creating temporary file "C:\DOCUME~1\alanmi\LOCALS~1\Temp\RSP20AC.tmp" with contents
[
/nologo /out:"abclib\abclib_debug.lib"
.\abclib\DebugLib\abcAig.obj
.\abclib\DebugLib\abcCheck.obj
.\abclib\DebugLib\abcDfs.obj
.\abclib\DebugLib\abcFanio.obj
.\abclib\DebugLib\abcFunc.obj
.\abclib\DebugLib\abcLatch.obj
.\abclib\DebugLib\abcLib.obj
.\abclib\DebugLib\abcMinBase.obj
.\abclib\DebugLib\abcNames.obj
.\abclib\DebugLib\abcNetlist.obj
.\abclib\DebugLib\abcNtk.obj
.\abclib\DebugLib\abcObj.obj
.\abclib\DebugLib\abcRefs.obj
.\abclib\DebugLib\abcShow.obj
.\abclib\DebugLib\abcSop.obj
.\abclib\DebugLib\abcUtil.obj
.\abclib\DebugLib\abc.obj
.\abclib\DebugLib\abcAttach.obj
.\abclib\DebugLib\abcAuto.obj
.\abclib\DebugLib\abcBalance.obj
.\abclib\DebugLib\abcBmc.obj
.\abclib\DebugLib\abcClpBdd.obj
.\abclib\DebugLib\abcClpSop.obj
.\abclib\DebugLib\abcCut.obj
.\abclib\DebugLib\abcDebug.obj
.\abclib\DebugLib\abcDress.obj
.\abclib\DebugLib\abcDsd.obj
.\abclib\DebugLib\abcEspresso.obj
.\abclib\DebugLib\abcExtract.obj
.\abclib\DebugLib\abcFpga.obj
.\abclib\DebugLib\abcFpgaFast.obj
.\abclib\DebugLib\abcFraig.obj
.\abclib\DebugLib\abcFxu.obj
.\abclib\DebugLib\abcGen.obj
.\abclib\DebugLib\abcIf.obj
.\abclib\DebugLib\abcIvy.obj
.\abclib\DebugLib\abcLut.obj
.\abclib\DebugLib\abcMap.obj
.\abclib\DebugLib\abcMini.obj
.\abclib\DebugLib\abcMiter.obj
.\abclib\DebugLib\abcMulti.obj
.\abclib\DebugLib\abcMv.obj
.\abclib\DebugLib\abcNtbdd.obj
.\abclib\DebugLib\abcOrder.obj
.\abclib\DebugLib\abcPrint.obj
.\abclib\DebugLib\abcProve.obj
.\abclib\DebugLib\abcReconv.obj
.\abclib\DebugLib\abcRefactor.obj
.\abclib\DebugLib\abcRenode.obj
.\abclib\DebugLib\abcReorder.obj
.\abclib\DebugLib\abcRestruct.obj
.\abclib\DebugLib\abcResub.obj
.\abclib\DebugLib\abcRewrite.obj
.\abclib\DebugLib\abcRr.obj
.\abclib\DebugLib\abcSat.obj
.\abclib\DebugLib\abcStrash.obj
.\abclib\DebugLib\abcSweep.obj
.\abclib\DebugLib\abcSymm.obj
.\abclib\DebugLib\abcTiming.obj
.\abclib\DebugLib\abcUnate.obj
.\abclib\DebugLib\abcUnreach.obj
.\abclib\DebugLib\abcVerify.obj
.\abclib\DebugLib\abcXsim.obj
.\abclib\DebugLib\cmd.obj
.\abclib\DebugLib\cmdAlias.obj
.\abclib\DebugLib\cmdApi.obj
.\abclib\DebugLib\cmdFlag.obj
.\abclib\DebugLib\cmdHist.obj
.\abclib\DebugLib\cmdUtils.obj
.\abclib\DebugLib\io.obj
.\abclib\DebugLib\ioReadAiger.obj
.\abclib\DebugLib\ioReadBaf.obj
.\abclib\DebugLib\ioReadBench.obj
.\abclib\DebugLib\ioReadBlif.obj
.\abclib\DebugLib\ioReadBlifAig.obj
.\abclib\DebugLib\ioReadEdif.obj
.\abclib\DebugLib\ioReadEqn.obj
.\abclib\DebugLib\ioReadPla.obj
.\abclib\DebugLib\ioUtil.obj
.\abclib\DebugLib\ioWriteAiger.obj
.\abclib\DebugLib\ioWriteBaf.obj
.\abclib\DebugLib\ioWriteBench.obj
.\abclib\DebugLib\ioWriteBlif.obj
.\abclib\DebugLib\ioWriteCnf.obj
.\abclib\DebugLib\ioWriteDot.obj
.\abclib\DebugLib\ioWriteEqn.obj
.\abclib\DebugLib\ioWriteGml.obj
.\abclib\DebugLib\ioWriteList.obj
.\abclib\DebugLib\ioWritePla.obj
.\abclib\DebugLib\libSupport.obj
.\abclib\DebugLib\main.obj
.\abclib\DebugLib\mainFrame.obj
.\abclib\DebugLib\mainInit.obj
.\abclib\DebugLib\mainUtils.obj
.\abclib\DebugLib\verCore.obj
.\abclib\DebugLib\verFormula.obj
.\abclib\DebugLib\verParse.obj
.\abclib\DebugLib\verStream.obj
.\abclib\DebugLib\cuddAddAbs.obj
.\abclib\DebugLib\cuddAddApply.obj
.\abclib\DebugLib\cuddAddFind.obj
.\abclib\DebugLib\cuddAddInv.obj
.\abclib\DebugLib\cuddAddIte.obj
.\abclib\DebugLib\cuddAddNeg.obj
.\abclib\DebugLib\cuddAddWalsh.obj
.\abclib\DebugLib\cuddAndAbs.obj
.\abclib\DebugLib\cuddAnneal.obj
.\abclib\DebugLib\cuddApa.obj
.\abclib\DebugLib\cuddAPI.obj
.\abclib\DebugLib\cuddApprox.obj
.\abclib\DebugLib\cuddBddAbs.obj
.\abclib\DebugLib\cuddBddCorr.obj
.\abclib\DebugLib\cuddBddIte.obj
.\abclib\DebugLib\cuddBridge.obj
.\abclib\DebugLib\cuddCache.obj
.\abclib\DebugLib\cuddCheck.obj
.\abclib\DebugLib\cuddClip.obj
.\abclib\DebugLib\cuddCof.obj
.\abclib\DebugLib\cuddCompose.obj
.\abclib\DebugLib\cuddDecomp.obj
.\abclib\DebugLib\cuddEssent.obj
.\abclib\DebugLib\cuddExact.obj
.\abclib\DebugLib\cuddExport.obj
.\abclib\DebugLib\cuddGenCof.obj
.\abclib\DebugLib\cuddGenetic.obj
.\abclib\DebugLib\cuddGroup.obj
.\abclib\DebugLib\cuddHarwell.obj
.\abclib\DebugLib\cuddInit.obj
.\abclib\DebugLib\cuddInteract.obj
.\abclib\DebugLib\cuddLCache.obj
.\abclib\DebugLib\cuddLevelQ.obj
.\abclib\DebugLib\cuddLinear.obj
.\abclib\DebugLib\cuddLiteral.obj
.\abclib\DebugLib\cuddMatMult.obj
.\abclib\DebugLib\cuddPriority.obj
.\abclib\DebugLib\cuddRead.obj
.\abclib\DebugLib\cuddRef.obj
.\abclib\DebugLib\cuddReorder.obj
.\abclib\DebugLib\cuddSat.obj
.\abclib\DebugLib\cuddSign.obj
.\abclib\DebugLib\cuddSolve.obj
.\abclib\DebugLib\cuddSplit.obj
.\abclib\DebugLib\cuddSubsetHB.obj
.\abclib\DebugLib\cuddSubsetSP.obj
.\abclib\DebugLib\cuddSymmetry.obj
.\abclib\DebugLib\cuddTable.obj
.\abclib\DebugLib\cuddUtil.obj
.\abclib\DebugLib\cuddWindow.obj
.\abclib\DebugLib\cuddZddCount.obj
.\abclib\DebugLib\cuddZddFuncs.obj
.\abclib\DebugLib\cuddZddGroup.obj
.\abclib\DebugLib\cuddZddIsop.obj
.\abclib\DebugLib\cuddZddLin.obj
.\abclib\DebugLib\cuddZddMisc.obj
.\abclib\DebugLib\cuddZddPort.obj
.\abclib\DebugLib\cuddZddReord.obj
.\abclib\DebugLib\cuddZddSetop.obj
.\abclib\DebugLib\cuddZddSymm.obj
.\abclib\DebugLib\cuddZddUtil.obj
.\abclib\DebugLib\epd.obj
.\abclib\DebugLib\mtrBasic.obj
.\abclib\DebugLib\mtrGroup.obj
.\abclib\DebugLib\parseCore.obj
.\abclib\DebugLib\parseEqn.obj
.\abclib\DebugLib\parseStack.obj
.\abclib\DebugLib\dsdApi.obj
.\abclib\DebugLib\dsdCheck.obj
.\abclib\DebugLib\dsdLocal.obj
.\abclib\DebugLib\dsdMan.obj
.\abclib\DebugLib\dsdProc.obj
.\abclib\DebugLib\dsdTree.obj
.\abclib\DebugLib\reoApi.obj
.\abclib\DebugLib\reoCore.obj
.\abclib\DebugLib\reoProfile.obj
.\abclib\DebugLib\reoSift.obj
.\abclib\DebugLib\reoSwap.obj
.\abclib\DebugLib\reoTest.obj
.\abclib\DebugLib\reoTransfer.obj
.\abclib\DebugLib\reoUnits.obj
.\abclib\DebugLib\msatActivity.obj
.\abclib\DebugLib\msatClause.obj
.\abclib\DebugLib\msatClauseVec.obj
.\abclib\DebugLib\msatMem.obj
.\abclib\DebugLib\msatOrderH.obj
.\abclib\DebugLib\msatQueue.obj
.\abclib\DebugLib\msatRead.obj
.\abclib\DebugLib\msatSolverApi.obj
.\abclib\DebugLib\msatSolverCore.obj
.\abclib\DebugLib\msatSolverIo.obj
.\abclib\DebugLib\msatSolverSearch.obj
.\abclib\DebugLib\msatSort.obj
.\abclib\DebugLib\msatVec.obj
.\abclib\DebugLib\fraigApi.obj
.\abclib\DebugLib\fraigCanon.obj
.\abclib\DebugLib\fraigChoice.obj
.\abclib\DebugLib\fraigFanout.obj
.\abclib\DebugLib\fraigFeed.obj
.\abclib\DebugLib\fraigMan.obj
.\abclib\DebugLib\fraigMem.obj
.\abclib\DebugLib\fraigNode.obj
.\abclib\DebugLib\fraigPrime.obj
.\abclib\DebugLib\fraigSat.obj
.\abclib\DebugLib\fraigTable.obj
.\abclib\DebugLib\fraigUtil.obj
.\abclib\DebugLib\fraigVec.obj
.\abclib\DebugLib\csat_apis.obj
.\abclib\DebugLib\satMem.obj
.\abclib\DebugLib\satSolver.obj
.\abclib\DebugLib\satUtil.obj
.\abclib\DebugLib\fxu.obj
.\abclib\DebugLib\fxuCreate.obj
.\abclib\DebugLib\fxuHeapD.obj
.\abclib\DebugLib\fxuHeapS.obj
.\abclib\DebugLib\fxuList.obj
.\abclib\DebugLib\fxuMatrix.obj
.\abclib\DebugLib\fxuPair.obj
.\abclib\DebugLib\fxuPrint.obj
.\abclib\DebugLib\fxuReduce.obj
.\abclib\DebugLib\fxuSelect.obj
.\abclib\DebugLib\fxuSingle.obj
.\abclib\DebugLib\fxuUpdate.obj
.\abclib\DebugLib\rwrDec.obj
.\abclib\DebugLib\rwrEva.obj
.\abclib\DebugLib\rwrExp.obj
.\abclib\DebugLib\rwrLib.obj
.\abclib\DebugLib\rwrMan.obj
.\abclib\DebugLib\rwrPrint.obj
.\abclib\DebugLib\rwrTemp.obj
.\abclib\DebugLib\rwrUtil.obj
.\abclib\DebugLib\cutApi.obj
.\abclib\DebugLib\cutCut.obj
.\abclib\DebugLib\cutExpand.obj
.\abclib\DebugLib\cutMan.obj
.\abclib\DebugLib\cutMerge.obj
.\abclib\DebugLib\cutNode.obj
.\abclib\DebugLib\cutOracle.obj
.\abclib\DebugLib\cutPre22.obj
.\abclib\DebugLib\cutSeq.obj
.\abclib\DebugLib\cutTruth.obj
.\abclib\DebugLib\decAbc.obj
.\abclib\DebugLib\decFactor.obj
.\abclib\DebugLib\decMan.obj
.\abclib\DebugLib\decPrint.obj
.\abclib\DebugLib\decUtil.obj
.\abclib\DebugLib\simMan.obj
.\abclib\DebugLib\simSat.obj
.\abclib\DebugLib\simSeq.obj
.\abclib\DebugLib\simSupp.obj
.\abclib\DebugLib\simSwitch.obj
.\abclib\DebugLib\simSym.obj
.\abclib\DebugLib\simSymSat.obj
.\abclib\DebugLib\simSymSim.obj
.\abclib\DebugLib\simSymStr.obj
.\abclib\DebugLib\simUtils.obj
.\abclib\DebugLib\retArea.obj
.\abclib\DebugLib\retCore.obj
.\abclib\DebugLib\retDelay.obj
.\abclib\DebugLib\retFlow.obj
.\abclib\DebugLib\retIncrem.obj
.\abclib\DebugLib\retInit.obj
.\abclib\DebugLib\retLvalue.obj
.\abclib\DebugLib\fpga.obj
.\abclib\DebugLib\fpgaCore.obj
.\abclib\DebugLib\fpgaCreate.obj
.\abclib\DebugLib\fpgaCut.obj
.\abclib\DebugLib\fpgaCutUtils.obj
.\abclib\DebugLib\fpgaFanout.obj
.\abclib\DebugLib\fpgaLib.obj
.\abclib\DebugLib\fpgaMatch.obj
.\abclib\DebugLib\fpgaSwitch.obj
.\abclib\DebugLib\fpgaTime.obj
.\abclib\DebugLib\fpgaTruth.obj
.\abclib\DebugLib\fpgaUtils.obj
.\abclib\DebugLib\fpgaVec.obj
.\abclib\DebugLib\mapper.obj
.\abclib\DebugLib\mapperCanon.obj
.\abclib\DebugLib\mapperCore.obj
.\abclib\DebugLib\mapperCreate.obj
.\abclib\DebugLib\mapperCut.obj
.\abclib\DebugLib\mapperCutUtils.obj
.\abclib\DebugLib\mapperFanout.obj
.\abclib\DebugLib\mapperLib.obj
.\abclib\DebugLib\mapperMatch.obj
.\abclib\DebugLib\mapperRefs.obj
.\abclib\DebugLib\mapperSuper.obj
.\abclib\DebugLib\mapperSwitch.obj
.\abclib\DebugLib\mapperTable.obj
.\abclib\DebugLib\mapperTime.obj
.\abclib\DebugLib\mapperTree.obj
.\abclib\DebugLib\mapperTruth.obj
.\abclib\DebugLib\mapperUtils.obj
.\abclib\DebugLib\mapperVec.obj
.\abclib\DebugLib\mio.obj
.\abclib\DebugLib\mioApi.obj
.\abclib\DebugLib\mioFunc.obj
.\abclib\DebugLib\mioRead.obj
.\abclib\DebugLib\mioUtils.obj
.\abclib\DebugLib\super.obj
.\abclib\DebugLib\superAnd.obj
.\abclib\DebugLib\superGate.obj
.\abclib\DebugLib\superWrite.obj
.\abclib\DebugLib\ifCore.obj
.\abclib\DebugLib\ifCut.obj
.\abclib\DebugLib\ifMan.obj
.\abclib\DebugLib\ifMap.obj
.\abclib\DebugLib\ifReduce.obj
.\abclib\DebugLib\ifSeq.obj
.\abclib\DebugLib\ifTime.obj
.\abclib\DebugLib\ifTruth.obj
.\abclib\DebugLib\ifUtil.obj
.\abclib\DebugLib\extraBddAuto.obj
.\abclib\DebugLib\extraBddKmap.obj
.\abclib\DebugLib\extraBddMisc.obj
.\abclib\DebugLib\extraBddSymm.obj
.\abclib\DebugLib\extraBddUnate.obj
.\abclib\DebugLib\extraUtilBitMatrix.obj
.\abclib\DebugLib\extraUtilCanon.obj
.\abclib\DebugLib\extraUtilFile.obj
.\abclib\DebugLib\extraUtilMemory.obj
.\abclib\DebugLib\extraUtilMisc.obj
.\abclib\DebugLib\extraUtilProgress.obj
.\abclib\DebugLib\extraUtilReader.obj
.\abclib\DebugLib\extraUtilTruth.obj
.\abclib\DebugLib\extraUtilUtil.obj
.\abclib\DebugLib\st.obj
.\abclib\DebugLib\stmm.obj
.\abclib\DebugLib\mvc.obj
.\abclib\DebugLib\mvcApi.obj
.\abclib\DebugLib\mvcCompare.obj
.\abclib\DebugLib\mvcContain.obj
.\abclib\DebugLib\mvcCover.obj
.\abclib\DebugLib\mvcCube.obj
.\abclib\DebugLib\mvcDivide.obj
.\abclib\DebugLib\mvcDivisor.obj
.\abclib\DebugLib\mvcList.obj
.\abclib\DebugLib\mvcLits.obj
.\abclib\DebugLib\mvcMan.obj
.\abclib\DebugLib\mvcOpAlg.obj
.\abclib\DebugLib\mvcOpBool.obj
.\abclib\DebugLib\mvcPrint.obj
.\abclib\DebugLib\mvcSort.obj
.\abclib\DebugLib\mvcUtils.obj
.\abclib\DebugLib\cofactor.obj
.\abclib\DebugLib\cols.obj
.\abclib\DebugLib\compl.obj
.\abclib\DebugLib\contain.obj
.\abclib\DebugLib\cubehack.obj
.\abclib\DebugLib\cubestr.obj
.\abclib\DebugLib\cvrin.obj
.\abclib\DebugLib\cvrm.obj
.\abclib\DebugLib\cvrmisc.obj
.\abclib\DebugLib\cvrout.obj
.\abclib\DebugLib\dominate.obj
.\abclib\DebugLib\equiv.obj
.\abclib\DebugLib\espresso.obj
.\abclib\DebugLib\essen.obj
.\abclib\DebugLib\exact.obj
.\abclib\DebugLib\expand.obj
.\abclib\DebugLib\gasp.obj
.\abclib\DebugLib\gimpel.obj
.\abclib\DebugLib\globals.obj
.\abclib\DebugLib\hack.obj
.\abclib\DebugLib\indep.obj
.\abclib\DebugLib\irred.obj
.\abclib\DebugLib\map.obj
.\abclib\DebugLib\matrix.obj
.\abclib\DebugLib\mincov.obj
.\abclib\DebugLib\opo.obj
.\abclib\DebugLib\pair.obj
.\abclib\DebugLib\part.obj
.\abclib\DebugLib\primes.obj
.\abclib\DebugLib\reduce.obj
.\abclib\DebugLib\rows.obj
.\abclib\DebugLib\set.obj
.\abclib\DebugLib\setc.obj
.\abclib\DebugLib\sharp.obj
.\abclib\DebugLib\sminterf.obj
.\abclib\DebugLib\solution.obj
.\abclib\DebugLib\sparse.obj
.\abclib\DebugLib\unate.obj
.\abclib\DebugLib\verify.obj
.\abclib\DebugLib\nmApi.obj
.\abclib\DebugLib\nmTable.obj
.\abclib\DebugLib\hopBalance.obj
.\abclib\DebugLib\hopCheck.obj
.\abclib\DebugLib\hopDfs.obj
.\abclib\DebugLib\hopMan.obj
.\abclib\DebugLib\hopMem.obj
.\abclib\DebugLib\hopObj.obj
.\abclib\DebugLib\hopOper.obj
.\abclib\DebugLib\hopTable.obj
.\abclib\DebugLib\hopUtil.obj
.\abclib\DebugLib\ivyBalance.obj
.\abclib\DebugLib\ivyCanon.obj
.\abclib\DebugLib\ivyCheck.obj
.\abclib\DebugLib\ivyCut.obj
.\abclib\DebugLib\ivyCutTrav.obj
.\abclib\DebugLib\ivyDfs.obj
.\abclib\DebugLib\ivyDsd.obj
.\abclib\DebugLib\ivyFanout.obj
.\abclib\DebugLib\ivyFastMap.obj
.\abclib\DebugLib\ivyFraig.obj
.\abclib\DebugLib\ivyHaig.obj
.\abclib\DebugLib\ivyMan.obj
.\abclib\DebugLib\ivyMem.obj
.\abclib\DebugLib\ivyMulti.obj
.\abclib\DebugLib\ivyObj.obj
.\abclib\DebugLib\ivyOper.obj
.\abclib\DebugLib\ivyResyn.obj
.\abclib\DebugLib\ivyRwr.obj
.\abclib\DebugLib\ivySeq.obj
.\abclib\DebugLib\ivyShow.obj
.\abclib\DebugLib\ivyTable.obj
.\abclib\DebugLib\ivyUtil.obj
.\abclib\DebugLib\rwtDec.obj
.\abclib\DebugLib\rwtMan.obj
.\abclib\DebugLib\rwtUtil.obj
.\abclib\DebugLib\mem.obj
.\abclib\DebugLib\abcHie.obj
.\abclib\DebugLib\abcBlifMv.obj
.\abclib\DebugLib\abcCas.obj
.\abclib\DebugLib\abcDar.obj
.\abclib\DebugLib\abcHaig.obj
.\abclib\DebugLib\abcMeasure.obj
.\abclib\DebugLib\abcOdc.obj
.\abclib\DebugLib\abcPart.obj
.\abclib\DebugLib\abcRec.obj
.\abclib\DebugLib\abcQbf.obj
.\abclib\DebugLib\abcQuant.obj
.\abclib\DebugLib\ioReadDsd.obj
.\abclib\DebugLib\ioReadBlifMv.obj
.\abclib\DebugLib\ioReadVerilog.obj
.\abclib\DebugLib\ioWriteVerilog.obj
.\abclib\DebugLib\ioWriteBlifMv.obj
.\abclib\DebugLib\casDec.obj
.\abclib\DebugLib\casCore.obj
.\abclib\DebugLib\pr.obj
.\abclib\DebugLib\satTrace.obj
.\abclib\DebugLib\satInter.obj
.\abclib\DebugLib\satStore.obj
.\abclib\DebugLib\extraBddCas.obj
.\abclib\DebugLib\ioaWriteAig.obj
.\abclib\DebugLib\ioaReadAig.obj
.\abclib\DebugLib\ioaUtil.obj
.\abclib\DebugLib\darBalance.obj
.\abclib\DebugLib\darCore.obj
.\abclib\DebugLib\darCut.obj
.\abclib\DebugLib\darData.obj
.\abclib\DebugLib\darLib.obj
.\abclib\DebugLib\darMan.obj
.\abclib\DebugLib\darPrec.obj
.\abclib\DebugLib\darRefact.obj
.\abclib\DebugLib\darResub.obj
.\abclib\DebugLib\darScript.obj
.\abclib\DebugLib\fraBmc.obj
.\abclib\DebugLib\fraCec.obj
.\abclib\DebugLib\fraClass.obj
.\abclib\DebugLib\fraCnf.obj
.\abclib\DebugLib\fraCore.obj
.\abclib\DebugLib\fraImp.obj
.\abclib\DebugLib\fraInd.obj
.\abclib\DebugLib\fraLcr.obj
.\abclib\DebugLib\fraMan.obj
.\abclib\DebugLib\fraPart.obj
.\abclib\DebugLib\fraSat.obj
.\abclib\DebugLib\fraSec.obj
.\abclib\DebugLib\fraSim.obj
.\abclib\DebugLib\cnfCore.obj
.\abclib\DebugLib\cnfCut.obj
.\abclib\DebugLib\cnfData.obj
.\abclib\DebugLib\cnfMan.obj
.\abclib\DebugLib\cnfMap.obj
.\abclib\DebugLib\cnfPost.obj
.\abclib\DebugLib\cnfUtil.obj
.\abclib\DebugLib\cnfWrite.obj
.\abclib\DebugLib\cswCore.obj
.\abclib\DebugLib\cswCut.obj
.\abclib\DebugLib\cswMan.obj
.\abclib\DebugLib\cswTable.obj
.\abclib\DebugLib\cloud.obj
.\abclib\DebugLib\kitAig.obj
.\abclib\DebugLib\kitBdd.obj
.\abclib\DebugLib\kitCloud.obj
.\abclib\DebugLib\kitDsd.obj
.\abclib\DebugLib\kitFactor.obj
.\abclib\DebugLib\kitGraph.obj
.\abclib\DebugLib\kitHop.obj
.\abclib\DebugLib\kitIsop.obj
.\abclib\DebugLib\kitSop.obj
.\abclib\DebugLib\kitTruth.obj
.\abclib\DebugLib\bdcCore.obj
.\abclib\DebugLib\bdcDec.obj
.\abclib\DebugLib\bdcTable.obj
.\abclib\DebugLib\aigCheck.obj
.\abclib\DebugLib\aigDfs.obj
.\abclib\DebugLib\aigFanout.obj
.\abclib\DebugLib\aigMan.obj
.\abclib\DebugLib\aigMem.obj
.\abclib\DebugLib\aigMffc.obj
.\abclib\DebugLib\aigObj.obj
.\abclib\DebugLib\aigOper.obj
.\abclib\DebugLib\aigOrder.obj
.\abclib\DebugLib\aigPart.obj
.\abclib\DebugLib\aigRepr.obj
.\abclib\DebugLib\aigRet.obj
.\abclib\DebugLib\aigScl.obj
.\abclib\DebugLib\aigSeq.obj
.\abclib\DebugLib\aigShow.obj
.\abclib\DebugLib\aigTable.obj
.\abclib\DebugLib\aigTime.obj
.\abclib\DebugLib\aigTiming.obj
.\abclib\DebugLib\aigTruth.obj
.\abclib\DebugLib\aigTsim.obj
.\abclib\DebugLib\aigUtil.obj
.\abclib\DebugLib\aigWin.obj
.\abclib\DebugLib\bar.obj
.\abclib\DebugLib\resCore.obj
.\abclib\DebugLib\resDivs.obj
.\abclib\DebugLib\resFilter.obj
.\abclib\DebugLib\resSat.obj
.\abclib\DebugLib\resSim.obj
.\abclib\DebugLib\resStrash.obj
.\abclib\DebugLib\resWin.obj
.\abclib\DebugLib\lpkAbcDec.obj
.\abclib\DebugLib\lpkAbcDsd.obj
.\abclib\DebugLib\lpkAbcMux.obj
.\abclib\DebugLib\lpkAbcUtil.obj
.\abclib\DebugLib\lpkCore.obj
.\abclib\DebugLib\lpkCut.obj
.\abclib\DebugLib\lpkMan.obj
.\abclib\DebugLib\lpkMap.obj
.\abclib\DebugLib\lpkMulti.obj
.\abclib\DebugLib\lpkMux.obj
.\abclib\DebugLib\lpkSets.obj
]
Creating command line "link.exe -lib @C:\DOCUME~1\alanmi\LOCALS~1\Temp\RSP20AC.tmp"
<h3>Output Window</h3>
Compiling...
abcAig.c
abcCheck.c
abcDfs.c
abcFanio.c
abcFunc.c
abcLatch.c
abcLib.c
abcMinBase.c
abcNames.c
abcNetlist.c
abcNtk.c
abcObj.c
abcRefs.c
abcShow.c
abcSop.c
abcUtil.c
abc.c
abcAttach.c
abcAuto.c
abcBalance.c
abcBmc.c
abcClpBdd.c
abcClpSop.c
abcCut.c
abcDebug.c
abcDress.c
abcDsd.c
abcEspresso.c
abcExtract.c
abcFpga.c
abcFpgaFast.c
abcFraig.c
abcFxu.c
abcGen.c
abcIf.c
abcIvy.c
abcLut.c
abcMap.c
abcMini.c
abcMiter.c
abcMulti.c
abcMv.c
abcNtbdd.c
abcOrder.c
abcPrint.c
abcProve.c
abcReconv.c
abcRefactor.c
abcRenode.c
abcReorder.c
abcRestruct.c
abcResub.c
abcRewrite.c
abcRr.c
abcSat.c
abcStrash.c
abcSweep.c
abcSymm.c
abcTiming.c
abcUnate.c
abcUnreach.c
abcVerify.c
abcXsim.c
cmd.c
cmdAlias.c
cmdApi.c
cmdFlag.c
cmdHist.c
cmdUtils.c
io.c
ioReadAiger.c
ioReadBaf.c
ioReadBench.c
ioReadBlif.c
ioReadBlifAig.c
ioReadEdif.c
ioReadEqn.c
ioReadPla.c
ioUtil.c
ioWriteAiger.c
ioWriteBaf.c
ioWriteBench.c
ioWriteBlif.c
ioWriteCnf.c
ioWriteDot.c
ioWriteEqn.c
ioWriteGml.c
ioWriteList.c
ioWritePla.c
libSupport.c
main.c
mainFrame.c
mainInit.c
mainUtils.c
verCore.c
verFormula.c
verParse.c
verStream.c
cuddAddAbs.c
cuddAddApply.c
cuddAddFind.c
cuddAddInv.c
cuddAddIte.c
cuddAddNeg.c
cuddAddWalsh.c
cuddAndAbs.c
cuddAnneal.c
cuddApa.c
C:\_projects\abc\src\bdd\cudd\cuddApa.c(181) : warning C4244: 'return' : conversion from 'unsigned long ' to 'unsigned short ', possible loss of data
C:\_projects\abc\src\bdd\cudd\cuddApa.c(213) : warning C4244: 'return' : conversion from 'unsigned long ' to 'unsigned short ', possible loss of data
C:\_projects\abc\src\bdd\cudd\cuddApa.c(530) : warning C4244: '=' : conversion from 'unsigned short ' to 'unsigned char ', possible loss of data
C:\_projects\abc\src\bdd\cudd\cuddApa.c(588) : warning C4244: '=' : conversion from 'unsigned short ' to 'unsigned char ', possible loss of data
cuddAPI.c
cuddApprox.c
cuddBddAbs.c
cuddBddCorr.c
cuddBddIte.c
cuddBridge.c
cuddCache.c
C:\_projects\abc\src\bdd\cudd\cuddCache.c(902) : warning C4146: unary minus operator applied to unsigned type, result still unsigned
cuddCheck.c
cuddClip.c
cuddCof.c
cuddCompose.c
cuddDecomp.c
cuddEssent.c
cuddExact.c
cuddExport.c
cuddGenCof.c
cuddGenetic.c
cuddGroup.c
C:\_projects\abc\src\bdd\cudd\cuddGroup.c(2062) : warning C4018: '<=' : signed/unsigned mismatch
cuddHarwell.c
cuddInit.c
cuddInteract.c
cuddLCache.c
c:\_projects\abc\src\bdd\cudd\cuddlcache.c(1387) : warning C4146: unary minus operator applied to unsigned type, result still unsigned
cuddLevelQ.c
cuddLinear.c
cuddLiteral.c
cuddMatMult.c
cuddPriority.c
cuddRead.c
cuddRef.c
cuddReorder.c
C:\_projects\abc\src\bdd\cudd\cuddReorder.c(395) : warning C4146: unary minus operator applied to unsigned type, result still unsigned
cuddSat.c
cuddSign.c
cuddSolve.c
cuddSplit.c
cuddSubsetHB.c
cuddSubsetSP.c
cuddSymmetry.c
cuddTable.c
C:\_projects\abc\src\bdd\cudd\cuddTable.c(1822) : warning C4018: '<' : signed/unsigned mismatch
C:\_projects\abc\src\bdd\cudd\cuddTable.c(1927) : warning C4018: '<' : signed/unsigned mismatch
C:\_projects\abc\src\bdd\cudd\cuddTable.c(2235) : warning C4018: '<' : signed/unsigned mismatch
C:\_projects\abc\src\bdd\cudd\cuddTable.c(2303) : warning C4018: '<' : signed/unsigned mismatch
C:\_projects\abc\src\bdd\cudd\cuddTable.c(2358) : warning C4146: unary minus operator applied to unsigned type, result still unsigned
cuddUtil.c
cuddWindow.c
cuddZddCount.c
cuddZddFuncs.c
cuddZddGroup.c
cuddZddIsop.c
cuddZddLin.c
cuddZddMisc.c
cuddZddPort.c
cuddZddReord.c
cuddZddSetop.c
cuddZddSymm.c
cuddZddUtil.c
epd.c
mtrBasic.c
mtrGroup.c
parseCore.c
parseEqn.c
parseStack.c
dsdApi.c
dsdCheck.c
dsdLocal.c
dsdMan.c
dsdProc.c
dsdTree.c
reoApi.c
reoCore.c
reoProfile.c
reoSift.c
reoSwap.c
reoTest.c
reoTransfer.c
reoUnits.c
msatActivity.c
msatClause.c
msatClauseVec.c
msatMem.c
msatOrderH.c
msatQueue.c
msatRead.c
msatSolverApi.c
msatSolverCore.c
msatSolverIo.c
msatSolverSearch.c
msatSort.c
msatVec.c
fraigApi.c
fraigCanon.c
fraigChoice.c
fraigFanout.c
fraigFeed.c
fraigMan.c
fraigMem.c
fraigNode.c
fraigPrime.c
fraigSat.c
fraigTable.c
fraigUtil.c
fraigVec.c
csat_apis.c
satMem.c
satSolver.c
satUtil.c
fxu.c
fxuCreate.c
fxuHeapD.c
fxuHeapS.c
fxuList.c
fxuMatrix.c
fxuPair.c
fxuPrint.c
fxuReduce.c
fxuSelect.c
fxuSingle.c
fxuUpdate.c
rwrDec.c
rwrEva.c
rwrExp.c
rwrLib.c
rwrMan.c
rwrPrint.c
rwrTemp.c
rwrUtil.c
cutApi.c
cutCut.c
cutExpand.c
cutMan.c
cutMerge.c
cutNode.c
cutOracle.c
cutPre22.c
cutSeq.c
cutTruth.c
decAbc.c
decFactor.c
decMan.c
decPrint.c
decUtil.c
simMan.c
simSat.c
simSeq.c
simSupp.c
simSwitch.c
simSym.c
simSymSat.c
simSymSim.c
simSymStr.c
simUtils.c
retArea.c
retCore.c
retDelay.c
retFlow.c
retIncrem.c
retInit.c
retLvalue.c
fpga.c
fpgaCore.c
fpgaCreate.c
fpgaCut.c
fpgaCutUtils.c
fpgaFanout.c
fpgaLib.c
fpgaMatch.c
fpgaSwitch.c
fpgaTime.c
fpgaTruth.c
fpgaUtils.c
fpgaVec.c
mapper.c
mapperCanon.c
mapperCore.c
mapperCreate.c
mapperCut.c
mapperCutUtils.c
mapperFanout.c
mapperLib.c
mapperMatch.c
mapperRefs.c
mapperSuper.c
mapperSwitch.c
mapperTable.c
mapperTime.c
mapperTree.c
mapperTruth.c
mapperUtils.c
mapperVec.c
mio.c
mioApi.c
mioFunc.c
mioRead.c
mioUtils.c
super.c
superAnd.c
superGate.c
superWrite.c
ifCore.c
ifCut.c
ifMan.c
ifMap.c
ifReduce.c
ifSeq.c
ifTime.c
ifTruth.c
ifUtil.c
extraBddAuto.c
extraBddKmap.c
extraBddMisc.c
extraBddSymm.c
extraBddUnate.c
extraUtilBitMatrix.c
extraUtilCanon.c
extraUtilFile.c
extraUtilMemory.c
extraUtilMisc.c
extraUtilProgress.c
extraUtilReader.c
extraUtilTruth.c
extraUtilUtil.c
st.c
stmm.c
mvc.c
mvcApi.c
mvcCompare.c
mvcContain.c
mvcCover.c
mvcCube.c
mvcDivide.c
mvcDivisor.c
mvcList.c
mvcLits.c
mvcMan.c
mvcOpAlg.c
mvcOpBool.c
mvcPrint.c
mvcSort.c
mvcUtils.c
cofactor.c
c:\_projects\abc\src\misc\espresso\cofactor.c(370) : warning C4113: 'int (__cdecl *)()' differs in parameter lists from 'int (__cdecl *)(const void *,const void *)'
cols.c
compl.c
c:\_projects\abc\src\misc\espresso\compl.c(200) : warning C4113: 'int (__cdecl *)()' differs in parameter lists from 'int (__cdecl *)(const void *,const void *)'
c:\_projects\abc\src\misc\espresso\compl.c(201) : warning C4113: 'int (__cdecl *)()' differs in parameter lists from 'int (__cdecl *)(const void *,const void *)'
contain.c
c:\_projects\abc\src\misc\espresso\contain.c(221) : warning C4018: '!=' : signed/unsigned mismatch
c:\_projects\abc\src\misc\espresso\contain.c(249) : warning C4018: '!=' : signed/unsigned mismatch
c:\_projects\abc\src\misc\espresso\contain.c(338) : warning C4113: 'int (__cdecl *)()' differs in parameter lists from 'int (__cdecl *)(const void *,const void *)'
cubehack.c
cubestr.c
cvrin.c
C:\_projects\abc\src\misc\espresso\cvrin.c(38) : warning C4013: 'isspace' undefined; assuming extern returning int
cvrm.c
C:\_projects\abc\src\misc\espresso\cvrm.c(161) : warning C4113: 'int (__cdecl *)()' differs in parameter lists from 'int (__cdecl *)(const void *,const void *)'
C:\_projects\abc\src\misc\espresso\cvrm.c(189) : warning C4113: 'int (__cdecl *)()' differs in parameter lists from 'int (__cdecl *)(const void *,const void *)'
C:\_projects\abc\src\misc\espresso\cvrm.c(380) : warning C4033: 'foreach_output_function' must return a value
C:\_projects\abc\src\misc\espresso\cvrm.c(391) : warning C4033: 'foreach_output_function' must return a value
cvrmisc.c
cvrout.c
C:\_projects\abc\src\misc\espresso\cvrout.c(528) : warning C4033: 'output_symbolic_constraints' must return a value
dominate.c
C:\_projects\abc\src\misc\espresso\cvrout.c(453) : warning C4716: 'makeup_labels' : must return a value
equiv.c
espresso.c
essen.c
exact.c
expand.c
gasp.c
gimpel.c
globals.c
hack.c
C:\_projects\abc\src\misc\espresso\hack.c(21) : warning C4033: 'map_dcset' must return a value
C:\_projects\abc\src\misc\espresso\hack.c(35) : warning C4033: 'map_dcset' must return a value
C:\_projects\abc\src\misc\espresso\hack.c(420) : warning C4033: 'symbolic_hack_labels' must return a value
indep.c
irred.c
map.c
matrix.c
mincov.c
opo.c
pair.c
C:\_projects\abc\src\misc\espresso\pair.c(597) : warning C4033: 'generate_all_pairs' must return a value
part.c
C:\_projects\abc\src\misc\espresso\pair.c(456) : warning C4716: 'find_best_cost' : must return a value
C:\_projects\abc\src\misc\espresso\pair.c(583) : warning C4716: 'minimize_pair' : must return a value
C:\_projects\abc\src\misc\espresso\pair.c(675) : warning C4716: 'pair_free' : must return a value
primes.c
reduce.c
rows.c
set.c
c:\_projects\abc\src\misc\espresso\set.c(453) : warning C4018: '<=' : signed/unsigned mismatch
setc.c
c:\_projects\abc\src\misc\espresso\set.c(27) : warning C4716: 'intcpy' : must return a value
sharp.c
sminterf.c
solution.c
sparse.c
unate.c
C:\_projects\abc\src\misc\espresso\unate.c(172) : warning C4018: '<' : signed/unsigned mismatch
C:\_projects\abc\src\misc\espresso\unate.c(175) : warning C4018: '==' : signed/unsigned mismatch
verify.c
nmApi.c
nmTable.c
hopBalance.c
hopCheck.c
hopDfs.c
hopMan.c
hopMem.c
hopObj.c
hopOper.c
hopTable.c
hopUtil.c
ivyBalance.c
ivyCanon.c
ivyCheck.c
ivyCut.c
ivyCutTrav.c
ivyDfs.c
ivyDsd.c
ivyFanout.c
ivyFastMap.c
ivyFraig.c
ivyHaig.c
ivyMan.c
ivyMem.c
ivyMulti.c
ivyObj.c
ivyOper.c
ivyResyn.c
ivyRwr.c
ivySeq.c
ivyShow.c
ivyTable.c
ivyUtil.c
rwtDec.c
rwtMan.c
rwtUtil.c
mem.c
abcHie.c
abcBlifMv.c
abcCas.c
abcDar.c
abcHaig.c
abcMeasure.c
abcOdc.c
abcPart.c
abcRec.c
abcQbf.c
abcQuant.c
ioReadDsd.c
ioReadBlifMv.c
ioReadVerilog.c
ioWriteVerilog.c
ioWriteBlifMv.c
casDec.c
casCore.c
pr.c
satTrace.c
satInter.c
satStore.c
extraBddCas.c
ioaWriteAig.c
ioaReadAig.c
ioaUtil.c
darBalance.c
darCore.c
darCut.c
darData.c
darLib.c
darMan.c
darPrec.c
darRefact.c
darResub.c
darScript.c
fraBmc.c
fraCec.c
fraClass.c
fraCnf.c
fraCore.c
fraImp.c
fraInd.c
fraLcr.c
fraMan.c
fraPart.c
fraSat.c
fraSec.c
fraSim.c
cnfCore.c
cnfCut.c
cnfData.c
cnfMan.c
cnfMap.c
cnfPost.c
cnfUtil.c
cnfWrite.c
cswCore.c
cswCut.c
cswMan.c
cswTable.c
cloud.c
kitAig.c
kitBdd.c
kitCloud.c
kitDsd.c
kitFactor.c
kitGraph.c
kitHop.c
kitIsop.c
kitSop.c
kitTruth.c
bdcCore.c
bdcDec.c
bdcTable.c
aigCheck.c
aigDfs.c
aigFanout.c
aigMan.c
aigMem.c
aigMffc.c
aigObj.c
aigOper.c
aigOrder.c
aigPart.c
aigRepr.c
aigRet.c
aigScl.c
aigSeq.c
aigShow.c
aigTable.c
aigTime.c
aigTiming.c
aigTruth.c
aigTsim.c
aigUtil.c
aigWin.c
bar.c
resCore.c
resDivs.c
resFilter.c
resSat.c
resSim.c
resStrash.c
resWin.c
lpkAbcDec.c
lpkAbcDsd.c
lpkAbcMux.c
lpkAbcUtil.c
lpkCore.c
lpkCut.c
lpkMan.c
lpkMap.c
lpkMulti.c
lpkMux.c
lpkSets.c
Creating library...
Creating temporary file "C:\DOCUME~1\alanmi\LOCALS~1\Temp\RSP20AD.tmp" with contents
[
/nologo /o"abclib\DebugLib/abclib.bsc"
.\abclib\DebugLib\abcAig.sbr
.\abclib\DebugLib\abcCheck.sbr
.\abclib\DebugLib\abcDfs.sbr
.\abclib\DebugLib\abcFanio.sbr
.\abclib\DebugLib\abcFunc.sbr
.\abclib\DebugLib\abcLatch.sbr
.\abclib\DebugLib\abcLib.sbr
.\abclib\DebugLib\abcMinBase.sbr
.\abclib\DebugLib\abcNames.sbr
.\abclib\DebugLib\abcNetlist.sbr
.\abclib\DebugLib\abcNtk.sbr
.\abclib\DebugLib\abcObj.sbr
.\abclib\DebugLib\abcRefs.sbr
.\abclib\DebugLib\abcShow.sbr
.\abclib\DebugLib\abcSop.sbr
.\abclib\DebugLib\abcUtil.sbr
.\abclib\DebugLib\abc.sbr
.\abclib\DebugLib\abcAttach.sbr
.\abclib\DebugLib\abcAuto.sbr
.\abclib\DebugLib\abcBalance.sbr
.\abclib\DebugLib\abcBmc.sbr
.\abclib\DebugLib\abcClpBdd.sbr
.\abclib\DebugLib\abcClpSop.sbr
.\abclib\DebugLib\abcCut.sbr
.\abclib\DebugLib\abcDebug.sbr
.\abclib\DebugLib\abcDress.sbr
.\abclib\DebugLib\abcDsd.sbr
.\abclib\DebugLib\abcEspresso.sbr
.\abclib\DebugLib\abcExtract.sbr
.\abclib\DebugLib\abcFpga.sbr
.\abclib\DebugLib\abcFpgaFast.sbr
.\abclib\DebugLib\abcFraig.sbr
.\abclib\DebugLib\abcFxu.sbr
.\abclib\DebugLib\abcGen.sbr
.\abclib\DebugLib\abcIf.sbr
.\abclib\DebugLib\abcIvy.sbr
.\abclib\DebugLib\abcLut.sbr
.\abclib\DebugLib\abcMap.sbr
.\abclib\DebugLib\abcMini.sbr
.\abclib\DebugLib\abcMiter.sbr
.\abclib\DebugLib\abcMulti.sbr
.\abclib\DebugLib\abcMv.sbr
.\abclib\DebugLib\abcNtbdd.sbr
.\abclib\DebugLib\abcOrder.sbr
.\abclib\DebugLib\abcPrint.sbr
.\abclib\DebugLib\abcProve.sbr
.\abclib\DebugLib\abcReconv.sbr
.\abclib\DebugLib\abcRefactor.sbr
.\abclib\DebugLib\abcRenode.sbr
.\abclib\DebugLib\abcReorder.sbr
.\abclib\DebugLib\abcRestruct.sbr
.\abclib\DebugLib\abcResub.sbr
.\abclib\DebugLib\abcRewrite.sbr
.\abclib\DebugLib\abcRr.sbr
.\abclib\DebugLib\abcSat.sbr
.\abclib\DebugLib\abcStrash.sbr
.\abclib\DebugLib\abcSweep.sbr
.\abclib\DebugLib\abcSymm.sbr
.\abclib\DebugLib\abcTiming.sbr
.\abclib\DebugLib\abcUnate.sbr
.\abclib\DebugLib\abcUnreach.sbr
.\abclib\DebugLib\abcVerify.sbr
.\abclib\DebugLib\abcXsim.sbr
.\abclib\DebugLib\cmd.sbr
.\abclib\DebugLib\cmdAlias.sbr
.\abclib\DebugLib\cmdApi.sbr
.\abclib\DebugLib\cmdFlag.sbr
.\abclib\DebugLib\cmdHist.sbr
.\abclib\DebugLib\cmdUtils.sbr
.\abclib\DebugLib\io.sbr
.\abclib\DebugLib\ioReadAiger.sbr
.\abclib\DebugLib\ioReadBaf.sbr
.\abclib\DebugLib\ioReadBench.sbr
.\abclib\DebugLib\ioReadBlif.sbr
.\abclib\DebugLib\ioReadBlifAig.sbr
.\abclib\DebugLib\ioReadEdif.sbr
.\abclib\DebugLib\ioReadEqn.sbr
.\abclib\DebugLib\ioReadPla.sbr
.\abclib\DebugLib\ioUtil.sbr
.\abclib\DebugLib\ioWriteAiger.sbr
.\abclib\DebugLib\ioWriteBaf.sbr
.\abclib\DebugLib\ioWriteBench.sbr
.\abclib\DebugLib\ioWriteBlif.sbr
.\abclib\DebugLib\ioWriteCnf.sbr
.\abclib\DebugLib\ioWriteDot.sbr
.\abclib\DebugLib\ioWriteEqn.sbr
.\abclib\DebugLib\ioWriteGml.sbr
.\abclib\DebugLib\ioWriteList.sbr
.\abclib\DebugLib\ioWritePla.sbr
.\abclib\DebugLib\libSupport.sbr
.\abclib\DebugLib\main.sbr
.\abclib\DebugLib\mainFrame.sbr
.\abclib\DebugLib\mainInit.sbr
.\abclib\DebugLib\mainUtils.sbr
.\abclib\DebugLib\verCore.sbr
.\abclib\DebugLib\verFormula.sbr
.\abclib\DebugLib\verParse.sbr
.\abclib\DebugLib\verStream.sbr
.\abclib\DebugLib\cuddAddAbs.sbr
.\abclib\DebugLib\cuddAddApply.sbr
.\abclib\DebugLib\cuddAddFind.sbr
.\abclib\DebugLib\cuddAddInv.sbr
.\abclib\DebugLib\cuddAddIte.sbr
.\abclib\DebugLib\cuddAddNeg.sbr
.\abclib\DebugLib\cuddAddWalsh.sbr
.\abclib\DebugLib\cuddAndAbs.sbr
.\abclib\DebugLib\cuddAnneal.sbr
.\abclib\DebugLib\cuddApa.sbr
.\abclib\DebugLib\cuddAPI.sbr
.\abclib\DebugLib\cuddApprox.sbr
.\abclib\DebugLib\cuddBddAbs.sbr
.\abclib\DebugLib\cuddBddCorr.sbr
.\abclib\DebugLib\cuddBddIte.sbr
.\abclib\DebugLib\cuddBridge.sbr
.\abclib\DebugLib\cuddCache.sbr
.\abclib\DebugLib\cuddCheck.sbr
.\abclib\DebugLib\cuddClip.sbr
.\abclib\DebugLib\cuddCof.sbr
.\abclib\DebugLib\cuddCompose.sbr
.\abclib\DebugLib\cuddDecomp.sbr
.\abclib\DebugLib\cuddEssent.sbr
.\abclib\DebugLib\cuddExact.sbr
.\abclib\DebugLib\cuddExport.sbr
.\abclib\DebugLib\cuddGenCof.sbr
.\abclib\DebugLib\cuddGenetic.sbr
.\abclib\DebugLib\cuddGroup.sbr
.\abclib\DebugLib\cuddHarwell.sbr
.\abclib\DebugLib\cuddInit.sbr
.\abclib\DebugLib\cuddInteract.sbr
.\abclib\DebugLib\cuddLCache.sbr
.\abclib\DebugLib\cuddLevelQ.sbr
.\abclib\DebugLib\cuddLinear.sbr
.\abclib\DebugLib\cuddLiteral.sbr
.\abclib\DebugLib\cuddMatMult.sbr
.\abclib\DebugLib\cuddPriority.sbr
.\abclib\DebugLib\cuddRead.sbr
.\abclib\DebugLib\cuddRef.sbr
.\abclib\DebugLib\cuddReorder.sbr
.\abclib\DebugLib\cuddSat.sbr
.\abclib\DebugLib\cuddSign.sbr
.\abclib\DebugLib\cuddSolve.sbr
.\abclib\DebugLib\cuddSplit.sbr
.\abclib\DebugLib\cuddSubsetHB.sbr
.\abclib\DebugLib\cuddSubsetSP.sbr
.\abclib\DebugLib\cuddSymmetry.sbr
.\abclib\DebugLib\cuddTable.sbr
.\abclib\DebugLib\cuddUtil.sbr
.\abclib\DebugLib\cuddWindow.sbr
.\abclib\DebugLib\cuddZddCount.sbr
.\abclib\DebugLib\cuddZddFuncs.sbr
.\abclib\DebugLib\cuddZddGroup.sbr
.\abclib\DebugLib\cuddZddIsop.sbr
.\abclib\DebugLib\cuddZddLin.sbr
.\abclib\DebugLib\cuddZddMisc.sbr
.\abclib\DebugLib\cuddZddPort.sbr
.\abclib\DebugLib\cuddZddReord.sbr
.\abclib\DebugLib\cuddZddSetop.sbr
.\abclib\DebugLib\cuddZddSymm.sbr
.\abclib\DebugLib\cuddZddUtil.sbr
.\abclib\DebugLib\epd.sbr
.\abclib\DebugLib\mtrBasic.sbr
.\abclib\DebugLib\mtrGroup.sbr
.\abclib\DebugLib\parseCore.sbr
.\abclib\DebugLib\parseEqn.sbr
.\abclib\DebugLib\parseStack.sbr
.\abclib\DebugLib\dsdApi.sbr
.\abclib\DebugLib\dsdCheck.sbr
.\abclib\DebugLib\dsdLocal.sbr
.\abclib\DebugLib\dsdMan.sbr
.\abclib\DebugLib\dsdProc.sbr
.\abclib\DebugLib\dsdTree.sbr
.\abclib\DebugLib\reoApi.sbr
.\abclib\DebugLib\reoCore.sbr
.\abclib\DebugLib\reoProfile.sbr
.\abclib\DebugLib\reoSift.sbr
.\abclib\DebugLib\reoSwap.sbr
.\abclib\DebugLib\reoTest.sbr
.\abclib\DebugLib\reoTransfer.sbr
.\abclib\DebugLib\reoUnits.sbr
.\abclib\DebugLib\msatActivity.sbr
.\abclib\DebugLib\msatClause.sbr
.\abclib\DebugLib\msatClauseVec.sbr
.\abclib\DebugLib\msatMem.sbr
.\abclib\DebugLib\msatOrderH.sbr
.\abclib\DebugLib\msatQueue.sbr
.\abclib\DebugLib\msatRead.sbr
.\abclib\DebugLib\msatSolverApi.sbr
.\abclib\DebugLib\msatSolverCore.sbr
.\abclib\DebugLib\msatSolverIo.sbr
.\abclib\DebugLib\msatSolverSearch.sbr
.\abclib\DebugLib\msatSort.sbr
.\abclib\DebugLib\msatVec.sbr
.\abclib\DebugLib\fraigApi.sbr
.\abclib\DebugLib\fraigCanon.sbr
.\abclib\DebugLib\fraigChoice.sbr
.\abclib\DebugLib\fraigFanout.sbr
.\abclib\DebugLib\fraigFeed.sbr
.\abclib\DebugLib\fraigMan.sbr
.\abclib\DebugLib\fraigMem.sbr
.\abclib\DebugLib\fraigNode.sbr
.\abclib\DebugLib\fraigPrime.sbr
.\abclib\DebugLib\fraigSat.sbr
.\abclib\DebugLib\fraigTable.sbr
.\abclib\DebugLib\fraigUtil.sbr
.\abclib\DebugLib\fraigVec.sbr
.\abclib\DebugLib\csat_apis.sbr
.\abclib\DebugLib\satMem.sbr
.\abclib\DebugLib\satSolver.sbr
.\abclib\DebugLib\satUtil.sbr
.\abclib\DebugLib\fxu.sbr
.\abclib\DebugLib\fxuCreate.sbr
.\abclib\DebugLib\fxuHeapD.sbr
.\abclib\DebugLib\fxuHeapS.sbr
.\abclib\DebugLib\fxuList.sbr
.\abclib\DebugLib\fxuMatrix.sbr
.\abclib\DebugLib\fxuPair.sbr
.\abclib\DebugLib\fxuPrint.sbr
.\abclib\DebugLib\fxuReduce.sbr
.\abclib\DebugLib\fxuSelect.sbr
.\abclib\DebugLib\fxuSingle.sbr
.\abclib\DebugLib\fxuUpdate.sbr
.\abclib\DebugLib\rwrDec.sbr
.\abclib\DebugLib\rwrEva.sbr
.\abclib\DebugLib\rwrExp.sbr
.\abclib\DebugLib\rwrLib.sbr
.\abclib\DebugLib\rwrMan.sbr
.\abclib\DebugLib\rwrPrint.sbr
.\abclib\DebugLib\rwrTemp.sbr
.\abclib\DebugLib\rwrUtil.sbr
.\abclib\DebugLib\cutApi.sbr
.\abclib\DebugLib\cutCut.sbr
.\abclib\DebugLib\cutExpand.sbr
.\abclib\DebugLib\cutMan.sbr
.\abclib\DebugLib\cutMerge.sbr
.\abclib\DebugLib\cutNode.sbr
.\abclib\DebugLib\cutOracle.sbr
.\abclib\DebugLib\cutPre22.sbr
.\abclib\DebugLib\cutSeq.sbr
.\abclib\DebugLib\cutTruth.sbr
.\abclib\DebugLib\decAbc.sbr
.\abclib\DebugLib\decFactor.sbr
.\abclib\DebugLib\decMan.sbr
.\abclib\DebugLib\decPrint.sbr
.\abclib\DebugLib\decUtil.sbr
.\abclib\DebugLib\simMan.sbr
.\abclib\DebugLib\simSat.sbr
.\abclib\DebugLib\simSeq.sbr
.\abclib\DebugLib\simSupp.sbr
.\abclib\DebugLib\simSwitch.sbr
.\abclib\DebugLib\simSym.sbr
.\abclib\DebugLib\simSymSat.sbr
.\abclib\DebugLib\simSymSim.sbr
.\abclib\DebugLib\simSymStr.sbr
.\abclib\DebugLib\simUtils.sbr
.\abclib\DebugLib\retArea.sbr
.\abclib\DebugLib\retCore.sbr
.\abclib\DebugLib\retDelay.sbr
.\abclib\DebugLib\retFlow.sbr
.\abclib\DebugLib\retIncrem.sbr
.\abclib\DebugLib\retInit.sbr
.\abclib\DebugLib\retLvalue.sbr
.\abclib\DebugLib\fpga.sbr
.\abclib\DebugLib\fpgaCore.sbr
.\abclib\DebugLib\fpgaCreate.sbr
.\abclib\DebugLib\fpgaCut.sbr
.\abclib\DebugLib\fpgaCutUtils.sbr
.\abclib\DebugLib\fpgaFanout.sbr
.\abclib\DebugLib\fpgaLib.sbr
.\abclib\DebugLib\fpgaMatch.sbr
.\abclib\DebugLib\fpgaSwitch.sbr
.\abclib\DebugLib\fpgaTime.sbr
.\abclib\DebugLib\fpgaTruth.sbr
.\abclib\DebugLib\fpgaUtils.sbr
.\abclib\DebugLib\fpgaVec.sbr
.\abclib\DebugLib\mapper.sbr
.\abclib\DebugLib\mapperCanon.sbr
.\abclib\DebugLib\mapperCore.sbr
.\abclib\DebugLib\mapperCreate.sbr
.\abclib\DebugLib\mapperCut.sbr
.\abclib\DebugLib\mapperCutUtils.sbr
.\abclib\DebugLib\mapperFanout.sbr
.\abclib\DebugLib\mapperLib.sbr
.\abclib\DebugLib\mapperMatch.sbr
.\abclib\DebugLib\mapperRefs.sbr
.\abclib\DebugLib\mapperSuper.sbr
.\abclib\DebugLib\mapperSwitch.sbr
.\abclib\DebugLib\mapperTable.sbr
.\abclib\DebugLib\mapperTime.sbr
.\abclib\DebugLib\mapperTree.sbr
.\abclib\DebugLib\mapperTruth.sbr
.\abclib\DebugLib\mapperUtils.sbr
.\abclib\DebugLib\mapperVec.sbr
.\abclib\DebugLib\mio.sbr
.\abclib\DebugLib\mioApi.sbr
.\abclib\DebugLib\mioFunc.sbr
.\abclib\DebugLib\mioRead.sbr
.\abclib\DebugLib\mioUtils.sbr
.\abclib\DebugLib\super.sbr
.\abclib\DebugLib\superAnd.sbr
.\abclib\DebugLib\superGate.sbr
.\abclib\DebugLib\superWrite.sbr
.\abclib\DebugLib\ifCore.sbr
.\abclib\DebugLib\ifCut.sbr
.\abclib\DebugLib\ifMan.sbr
.\abclib\DebugLib\ifMap.sbr
.\abclib\DebugLib\ifReduce.sbr
.\abclib\DebugLib\ifSeq.sbr
.\abclib\DebugLib\ifTime.sbr
.\abclib\DebugLib\ifTruth.sbr
.\abclib\DebugLib\ifUtil.sbr
.\abclib\DebugLib\extraBddAuto.sbr
.\abclib\DebugLib\extraBddKmap.sbr
.\abclib\DebugLib\extraBddMisc.sbr
.\abclib\DebugLib\extraBddSymm.sbr
.\abclib\DebugLib\extraBddUnate.sbr
.\abclib\DebugLib\extraUtilBitMatrix.sbr
.\abclib\DebugLib\extraUtilCanon.sbr
.\abclib\DebugLib\extraUtilFile.sbr
.\abclib\DebugLib\extraUtilMemory.sbr
.\abclib\DebugLib\extraUtilMisc.sbr
.\abclib\DebugLib\extraUtilProgress.sbr
.\abclib\DebugLib\extraUtilReader.sbr
.\abclib\DebugLib\extraUtilTruth.sbr
.\abclib\DebugLib\extraUtilUtil.sbr
.\abclib\DebugLib\st.sbr
.\abclib\DebugLib\stmm.sbr
.\abclib\DebugLib\mvc.sbr
.\abclib\DebugLib\mvcApi.sbr
.\abclib\DebugLib\mvcCompare.sbr
.\abclib\DebugLib\mvcContain.sbr
.\abclib\DebugLib\mvcCover.sbr
.\abclib\DebugLib\mvcCube.sbr
.\abclib\DebugLib\mvcDivide.sbr
.\abclib\DebugLib\mvcDivisor.sbr
.\abclib\DebugLib\mvcList.sbr
.\abclib\DebugLib\mvcLits.sbr
.\abclib\DebugLib\mvcMan.sbr
.\abclib\DebugLib\mvcOpAlg.sbr
.\abclib\DebugLib\mvcOpBool.sbr
.\abclib\DebugLib\mvcPrint.sbr
.\abclib\DebugLib\mvcSort.sbr
.\abclib\DebugLib\mvcUtils.sbr
.\abclib\DebugLib\cofactor.sbr
.\abclib\DebugLib\cols.sbr
.\abclib\DebugLib\compl.sbr
.\abclib\DebugLib\contain.sbr
.\abclib\DebugLib\cubehack.sbr
.\abclib\DebugLib\cubestr.sbr
.\abclib\DebugLib\cvrin.sbr
.\abclib\DebugLib\cvrm.sbr
.\abclib\DebugLib\cvrmisc.sbr
.\abclib\DebugLib\cvrout.sbr
.\abclib\DebugLib\dominate.sbr
.\abclib\DebugLib\equiv.sbr
.\abclib\DebugLib\espresso.sbr
.\abclib\DebugLib\essen.sbr
.\abclib\DebugLib\exact.sbr
.\abclib\DebugLib\expand.sbr
.\abclib\DebugLib\gasp.sbr
.\abclib\DebugLib\gimpel.sbr
.\abclib\DebugLib\globals.sbr
.\abclib\DebugLib\hack.sbr
.\abclib\DebugLib\indep.sbr
.\abclib\DebugLib\irred.sbr
.\abclib\DebugLib\map.sbr
.\abclib\DebugLib\matrix.sbr
.\abclib\DebugLib\mincov.sbr
.\abclib\DebugLib\opo.sbr
.\abclib\DebugLib\pair.sbr
.\abclib\DebugLib\part.sbr
.\abclib\DebugLib\primes.sbr
.\abclib\DebugLib\reduce.sbr
.\abclib\DebugLib\rows.sbr
.\abclib\DebugLib\set.sbr
.\abclib\DebugLib\setc.sbr
.\abclib\DebugLib\sharp.sbr
.\abclib\DebugLib\sminterf.sbr
.\abclib\DebugLib\solution.sbr
.\abclib\DebugLib\sparse.sbr
.\abclib\DebugLib\unate.sbr
.\abclib\DebugLib\verify.sbr
.\abclib\DebugLib\nmApi.sbr
.\abclib\DebugLib\nmTable.sbr
.\abclib\DebugLib\hopBalance.sbr
.\abclib\DebugLib\hopCheck.sbr
.\abclib\DebugLib\hopDfs.sbr
.\abclib\DebugLib\hopMan.sbr
.\abclib\DebugLib\hopMem.sbr
.\abclib\DebugLib\hopObj.sbr
.\abclib\DebugLib\hopOper.sbr
.\abclib\DebugLib\hopTable.sbr
.\abclib\DebugLib\hopUtil.sbr
.\abclib\DebugLib\ivyBalance.sbr
.\abclib\DebugLib\ivyCanon.sbr
.\abclib\DebugLib\ivyCheck.sbr
.\abclib\DebugLib\ivyCut.sbr
.\abclib\DebugLib\ivyCutTrav.sbr
.\abclib\DebugLib\ivyDfs.sbr
.\abclib\DebugLib\ivyDsd.sbr
.\abclib\DebugLib\ivyFanout.sbr
.\abclib\DebugLib\ivyFastMap.sbr
.\abclib\DebugLib\ivyFraig.sbr
.\abclib\DebugLib\ivyHaig.sbr
.\abclib\DebugLib\ivyMan.sbr
.\abclib\DebugLib\ivyMem.sbr
.\abclib\DebugLib\ivyMulti.sbr
.\abclib\DebugLib\ivyObj.sbr
.\abclib\DebugLib\ivyOper.sbr
.\abclib\DebugLib\ivyResyn.sbr
.\abclib\DebugLib\ivyRwr.sbr
.\abclib\DebugLib\ivySeq.sbr
.\abclib\DebugLib\ivyShow.sbr
.\abclib\DebugLib\ivyTable.sbr
.\abclib\DebugLib\ivyUtil.sbr
.\abclib\DebugLib\rwtDec.sbr
.\abclib\DebugLib\rwtMan.sbr
.\abclib\DebugLib\rwtUtil.sbr
.\abclib\DebugLib\mem.sbr
.\abclib\DebugLib\abcHie.sbr
.\abclib\DebugLib\abcBlifMv.sbr
.\abclib\DebugLib\abcCas.sbr
.\abclib\DebugLib\abcDar.sbr
.\abclib\DebugLib\abcHaig.sbr
.\abclib\DebugLib\abcMeasure.sbr
.\abclib\DebugLib\abcOdc.sbr
.\abclib\DebugLib\abcPart.sbr
.\abclib\DebugLib\abcRec.sbr
.\abclib\DebugLib\abcQbf.sbr
.\abclib\DebugLib\abcQuant.sbr
.\abclib\DebugLib\ioReadDsd.sbr
.\abclib\DebugLib\ioReadBlifMv.sbr
.\abclib\DebugLib\ioReadVerilog.sbr
.\abclib\DebugLib\ioWriteVerilog.sbr
.\abclib\DebugLib\ioWriteBlifMv.sbr
.\abclib\DebugLib\casDec.sbr
.\abclib\DebugLib\casCore.sbr
.\abclib\DebugLib\pr.sbr
.\abclib\DebugLib\satTrace.sbr
.\abclib\DebugLib\satInter.sbr
.\abclib\DebugLib\satStore.sbr
.\abclib\DebugLib\extraBddCas.sbr
.\abclib\DebugLib\ioaWriteAig.sbr
.\abclib\DebugLib\ioaReadAig.sbr
.\abclib\DebugLib\ioaUtil.sbr
.\abclib\DebugLib\darBalance.sbr
.\abclib\DebugLib\darCore.sbr
.\abclib\DebugLib\darCut.sbr
.\abclib\DebugLib\darData.sbr
.\abclib\DebugLib\darLib.sbr
.\abclib\DebugLib\darMan.sbr
.\abclib\DebugLib\darPrec.sbr
.\abclib\DebugLib\darRefact.sbr
.\abclib\DebugLib\darResub.sbr
.\abclib\DebugLib\darScript.sbr
.\abclib\DebugLib\fraBmc.sbr
.\abclib\DebugLib\fraCec.sbr
.\abclib\DebugLib\fraClass.sbr
.\abclib\DebugLib\fraCnf.sbr
.\abclib\DebugLib\fraCore.sbr
.\abclib\DebugLib\fraImp.sbr
.\abclib\DebugLib\fraInd.sbr
.\abclib\DebugLib\fraLcr.sbr
.\abclib\DebugLib\fraMan.sbr
.\abclib\DebugLib\fraPart.sbr
.\abclib\DebugLib\fraSat.sbr
.\abclib\DebugLib\fraSec.sbr
.\abclib\DebugLib\fraSim.sbr
.\abclib\DebugLib\cnfCore.sbr
.\abclib\DebugLib\cnfCut.sbr
.\abclib\DebugLib\cnfData.sbr
.\abclib\DebugLib\cnfMan.sbr
.\abclib\DebugLib\cnfMap.sbr
.\abclib\DebugLib\cnfPost.sbr
.\abclib\DebugLib\cnfUtil.sbr
.\abclib\DebugLib\cnfWrite.sbr
.\abclib\DebugLib\cswCore.sbr
.\abclib\DebugLib\cswCut.sbr
.\abclib\DebugLib\cswMan.sbr
.\abclib\DebugLib\cswTable.sbr
.\abclib\DebugLib\cloud.sbr
.\abclib\DebugLib\kitAig.sbr
.\abclib\DebugLib\kitBdd.sbr
.\abclib\DebugLib\kitCloud.sbr
.\abclib\DebugLib\kitDsd.sbr
.\abclib\DebugLib\kitFactor.sbr
.\abclib\DebugLib\kitGraph.sbr
.\abclib\DebugLib\kitHop.sbr
.\abclib\DebugLib\kitIsop.sbr
.\abclib\DebugLib\kitSop.sbr
.\abclib\DebugLib\kitTruth.sbr
.\abclib\DebugLib\bdcCore.sbr
.\abclib\DebugLib\bdcDec.sbr
.\abclib\DebugLib\bdcTable.sbr
.\abclib\DebugLib\aigCheck.sbr
.\abclib\DebugLib\aigDfs.sbr
.\abclib\DebugLib\aigFanout.sbr
.\abclib\DebugLib\aigMan.sbr
.\abclib\DebugLib\aigMem.sbr
.\abclib\DebugLib\aigMffc.sbr
.\abclib\DebugLib\aigObj.sbr
.\abclib\DebugLib\aigOper.sbr
.\abclib\DebugLib\aigOrder.sbr
.\abclib\DebugLib\aigPart.sbr
.\abclib\DebugLib\aigRepr.sbr
.\abclib\DebugLib\aigRet.sbr
.\abclib\DebugLib\aigScl.sbr
.\abclib\DebugLib\aigSeq.sbr
.\abclib\DebugLib\aigShow.sbr
.\abclib\DebugLib\aigTable.sbr
.\abclib\DebugLib\aigTime.sbr
.\abclib\DebugLib\aigTiming.sbr
.\abclib\DebugLib\aigTruth.sbr
.\abclib\DebugLib\aigTsim.sbr
.\abclib\DebugLib\aigUtil.sbr
.\abclib\DebugLib\aigWin.sbr
.\abclib\DebugLib\bar.sbr
.\abclib\DebugLib\resCore.sbr
.\abclib\DebugLib\resDivs.sbr
.\abclib\DebugLib\resFilter.sbr
.\abclib\DebugLib\resSat.sbr
.\abclib\DebugLib\resSim.sbr
.\abclib\DebugLib\resStrash.sbr
.\abclib\DebugLib\resWin.sbr
.\abclib\DebugLib\lpkAbcDec.sbr
.\abclib\DebugLib\lpkAbcDsd.sbr
.\abclib\DebugLib\lpkAbcMux.sbr
.\abclib\DebugLib\lpkAbcUtil.sbr
.\abclib\DebugLib\lpkCore.sbr
.\abclib\DebugLib\lpkCut.sbr
.\abclib\DebugLib\lpkMan.sbr
.\abclib\DebugLib\lpkMap.sbr
.\abclib\DebugLib\lpkMulti.sbr
.\abclib\DebugLib\lpkMux.sbr
.\abclib\DebugLib\lpkSets.sbr]
Creating command line "bscmake.exe @C:\DOCUME~1\alanmi\LOCALS~1\Temp\RSP20AD.tmp"
Creating browse info file...
<h3>Output Window</h3>
<h3>Results</h3>
abclib_debug.lib - 0 error(s), 37 warning(s)
</pre>
</body>
</html>
<html>
<body>
<pre>
<h1>Build Log</h1>
<h3>
--------------------Configuration: abctestlib - Win32 Release--------------------
</h3>
<h3>Command Lines</h3>
Creating temporary file "C:\DOCUME~1\alanmi\LOCALS~1\Temp\RSP20B8.tmp" with contents
[
/nologo /ML /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /Fp"Release/abctestlib.pch" /YX /Fo"Release/" /Fd"Release/" /FD /c
"C:\_projects\abc\demo.c"
]
Creating command line "cl.exe @C:\DOCUME~1\alanmi\LOCALS~1\Temp\RSP20B8.tmp"
Creating temporary file "C:\DOCUME~1\alanmi\LOCALS~1\Temp\RSP20B9.tmp" with contents
[
kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib C:\_projects\abc\abclib\abclib_release.lib /nologo /subsystem:console /incremental:no /pdb:"Release/abctestlib.pdb" /machine:I386 /out:"_TEST/abctestlib.exe"
.\Release\demo.obj
]
Creating command line "link.exe @C:\DOCUME~1\alanmi\LOCALS~1\Temp\RSP20B9.tmp"
<h3>Output Window</h3>
Compiling...
demo.c
Linking...
<h3>Results</h3>
abctestlib.exe - 0 error(s), 0 warning(s)
</pre>
</body>
</html>
...@@ -39,7 +39,7 @@ extern "C" { ...@@ -39,7 +39,7 @@ extern "C" {
#include "aig.h" #include "aig.h"
#include "dar.h" #include "dar.h"
#include "satSolver.h" #include "satSolver.h"
//#include "bar.h" #include "ioa.h"
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
/// PARAMETERS /// /// PARAMETERS ///
......
...@@ -1530,7 +1530,7 @@ void Fra_ClausWriteIndClauses( Clu_Man_t * p ) ...@@ -1530,7 +1530,7 @@ void Fra_ClausWriteIndClauses( Clu_Man_t * p )
extern void Ioa_WriteAiger( Aig_Man_t * pMan, char * pFileName, int fWriteSymbols, int fCompact ); extern void Ioa_WriteAiger( Aig_Man_t * pMan, char * pFileName, int fWriteSymbols, int fCompact );
Aig_Man_t * pNew; Aig_Man_t * pNew;
Aig_Obj_t * pClause, * pLiteral; Aig_Obj_t * pClause, * pLiteral;
char Buffer[500]; char Buffer[500], * pName;
int * pStart, * pVar2Id; int * pStart, * pVar2Id;
int Beg, End, i, k; int Beg, End, i, k;
// create mapping from SAT vars to node IDs // create mapping from SAT vars to node IDs
...@@ -1561,7 +1561,9 @@ void Fra_ClausWriteIndClauses( Clu_Man_t * p ) ...@@ -1561,7 +1561,9 @@ void Fra_ClausWriteIndClauses( Clu_Man_t * p )
free( pVar2Id ); free( pVar2Id );
Aig_ManCleanup( pNew ); Aig_ManCleanup( pNew );
// write the manager into a file // write the manager into a file
sprintf( Buffer, "%s_care.aig", p->pAig->pName ); pName = Ioa_FileNameGeneric(p->pAig->pName);
sprintf( Buffer, "%s_care.aig", pName );
free( pName );
printf( "Care clauses are written into file \"%s\".\n", Buffer ); printf( "Care clauses are written into file \"%s\".\n", Buffer );
Ioa_WriteAiger( pNew, Buffer, 0, 1 ); Ioa_WriteAiger( pNew, Buffer, 0, 1 );
Aig_ManStop( pNew ); Aig_ManStop( pNew );
......
...@@ -130,7 +130,7 @@ int Fra_OneHotNodesAreClause( Fra_Sml_t * pSeq, Aig_Obj_t * pObj1, Aig_Obj_t * p ...@@ -130,7 +130,7 @@ int Fra_OneHotNodesAreClause( Fra_Sml_t * pSeq, Aig_Obj_t * pObj1, Aig_Obj_t * p
***********************************************************************/ ***********************************************************************/
Vec_Int_t * Fra_OneHotCompute( Fra_Man_t * p, Fra_Sml_t * pSim ) Vec_Int_t * Fra_OneHotCompute( Fra_Man_t * p, Fra_Sml_t * pSim )
{ {
int fSkipConstEqu = 1; int fSkipConstEqu = 0;
Vec_Int_t * vOneHots; Vec_Int_t * vOneHots;
Aig_Obj_t * pObj1, * pObj2; Aig_Obj_t * pObj1, * pObj2;
int i, k; int i, k;
......
...@@ -471,12 +471,14 @@ clk2 = clock(); ...@@ -471,12 +471,14 @@ clk2 = clock();
if ( p->pPars->fWriteImps && p->vOneHots && Fra_OneHotCount(p, p->vOneHots) ) if ( p->pPars->fWriteImps && p->vOneHots && Fra_OneHotCount(p, p->vOneHots) )
{ {
extern void Ioa_WriteAiger( Aig_Man_t * pMan, char * pFileName, int fWriteSymbols, int fCompact ); extern void Ioa_WriteAiger( Aig_Man_t * pMan, char * pFileName, int fWriteSymbols, int fCompact );
char Buffer[500]; char Buffer[500], * pStart;
Aig_Man_t * pNew; Aig_Man_t * pNew;
pManAigNew = Aig_ManDup( pManAig, 1 ); pManAigNew = Aig_ManDup( pManAig, 1 );
// pManAigNew->pManExdc = Fra_OneHotCreateExdc( p, p->vOneHots ); // pManAigNew->pManExdc = Fra_OneHotCreateExdc( p, p->vOneHots );
pNew = Fra_OneHotCreateExdc( p, p->vOneHots ); pNew = Fra_OneHotCreateExdc( p, p->vOneHots );
sprintf( Buffer, "%s_care.aig", p->pManAig->pName ); pStart = Ioa_FileNameGeneric(p->pManAig->pName);
sprintf( Buffer, "%s_care.aig", pStart );
free( pStart );
printf( "Care one-hotness clauses are written into file \"%s\".\n", Buffer ); printf( "Care one-hotness clauses are written into file \"%s\".\n", Buffer );
Ioa_WriteAiger( pNew, Buffer, 0, 1 ); Ioa_WriteAiger( pNew, Buffer, 0, 1 );
Aig_ManStop( pNew ); Aig_ManStop( pNew );
......
...@@ -1025,7 +1025,7 @@ int Abc_NtkLevelReverse( Abc_Ntk_t * pNtk ) ...@@ -1025,7 +1025,7 @@ int Abc_NtkLevelReverse( Abc_Ntk_t * pNtk )
return LevelsMax; return LevelsMax;
} }
/**Function************************************************************* /**Function*************************************************************
Synopsis [Recursively detects combinational loops.] Synopsis [Recursively detects combinational loops.]
......
...@@ -3130,7 +3130,7 @@ int Abc_CommandImfs( Abc_Frame_t * pAbc, int argc, char ** argv ) ...@@ -3130,7 +3130,7 @@ int Abc_CommandImfs( Abc_Frame_t * pAbc, int argc, char ** argv )
pPars->nWindow = 62; pPars->nWindow = 62;
pPars->nCands = 5; pPars->nCands = 5;
pPars->nSimWords = 4; pPars->nSimWords = 4;
pPars->nGrowthLevel = 0; pPars->nGrowthLevel = 1;
pPars->fArea = 0; pPars->fArea = 0;
pPars->fVerbose = 0; pPars->fVerbose = 0;
pPars->fVeryVerbose = 0; pPars->fVeryVerbose = 0;
...@@ -3225,7 +3225,7 @@ usage: ...@@ -3225,7 +3225,7 @@ usage:
fprintf( pErr, "\t-W <NM> : fanin/fanout levels (NxM) of the window (00 <= NM <= 99) [default = %d%d]\n", pPars->nWindow/10, pPars->nWindow%10 ); fprintf( pErr, "\t-W <NM> : fanin/fanout levels (NxM) of the window (00 <= NM <= 99) [default = %d%d]\n", pPars->nWindow/10, pPars->nWindow%10 );
fprintf( pErr, "\t-C <num> : the max number of resub candidates (1 <= n) [default = %d]\n", pPars->nCands ); fprintf( pErr, "\t-C <num> : the max number of resub candidates (1 <= n) [default = %d]\n", pPars->nCands );
fprintf( pErr, "\t-S <num> : the number of simulation words (1 <= n <= 256) [default = %d]\n", pPars->nSimWords ); fprintf( pErr, "\t-S <num> : the number of simulation words (1 <= n <= 256) [default = %d]\n", pPars->nSimWords );
fprintf( pErr, "\t-L <num> : the largest increase in node level after resynthesis (0 <= num) [default = %d]\n", pPars->nGrowthLevel ); fprintf( pErr, "\t-L <num> : the max increase in node level after resynthesis (0 <= num) [default = %d]\n", pPars->nGrowthLevel );
fprintf( pErr, "\t-a : toggle optimization for area only [default = %s]\n", pPars->fArea? "yes": "no" ); fprintf( pErr, "\t-a : toggle optimization for area only [default = %s]\n", pPars->fArea? "yes": "no" );
fprintf( pErr, "\t-v : toggle verbose printout [default = %s]\n", pPars->fVerbose? "yes": "no" ); fprintf( pErr, "\t-v : toggle verbose printout [default = %s]\n", pPars->fVerbose? "yes": "no" );
fprintf( pErr, "\t-w : toggle printout subgraph statistics [default = %s]\n", pPars->fVeryVerbose? "yes": "no" ); fprintf( pErr, "\t-w : toggle printout subgraph statistics [default = %s]\n", pPars->fVeryVerbose? "yes": "no" );
...@@ -3264,13 +3264,15 @@ int Abc_CommandMfs( Abc_Frame_t * pAbc, int argc, char ** argv ) ...@@ -3264,13 +3264,15 @@ int Abc_CommandMfs( Abc_Frame_t * pAbc, int argc, char ** argv )
pPars->nDepthMax = 20; pPars->nDepthMax = 20;
pPars->nDivMax = 200; pPars->nDivMax = 200;
pPars->nWinSizeMax = 300; pPars->nWinSizeMax = 300;
pPars->nGrowthLevel = 0; pPars->nGrowthLevel = 1;
pPars->fResub = 1; pPars->fResub = 1;
pPars->fArea = 0; pPars->fArea = 0;
pPars->fMoreEffort = 0;
pPars->fSwapEdge = 0;
pPars->fVerbose = 0; pPars->fVerbose = 0;
pPars->fVeryVerbose = 0; pPars->fVeryVerbose = 0;
Extra_UtilGetoptReset(); Extra_UtilGetoptReset();
while ( ( c = Extra_UtilGetopt( argc, argv, "WFDMLravwh" ) ) != EOF ) while ( ( c = Extra_UtilGetopt( argc, argv, "WFDMLraesvwh" ) ) != EOF )
{ {
switch ( c ) switch ( c )
{ {
...@@ -3335,6 +3337,12 @@ int Abc_CommandMfs( Abc_Frame_t * pAbc, int argc, char ** argv ) ...@@ -3335,6 +3337,12 @@ int Abc_CommandMfs( Abc_Frame_t * pAbc, int argc, char ** argv )
case 'a': case 'a':
pPars->fArea ^= 1; pPars->fArea ^= 1;
break; break;
case 'e':
pPars->fMoreEffort ^= 1;
break;
case 's':
pPars->fSwapEdge ^= 1;
break;
case 'v': case 'v':
pPars->fVerbose ^= 1; pPars->fVerbose ^= 1;
break; break;
...@@ -3368,15 +3376,17 @@ int Abc_CommandMfs( Abc_Frame_t * pAbc, int argc, char ** argv ) ...@@ -3368,15 +3376,17 @@ int Abc_CommandMfs( Abc_Frame_t * pAbc, int argc, char ** argv )
return 0; return 0;
usage: usage:
fprintf( pErr, "usage: mfs [-WFDML <num>] [-arvh]\n" ); fprintf( pErr, "usage: mfs [-WFDML <num>] [-raesvh]\n" );
fprintf( pErr, "\t performs don't-care-based optimization of logic networks\n" ); fprintf( pErr, "\t performs don't-care-based optimization of logic networks\n" );
fprintf( pErr, "\t-W <num> : the number of levels in the TFO cone (0 <= num) [default = %d]\n", pPars->nWinTfoLevs ); fprintf( pErr, "\t-W <num> : the number of levels in the TFO cone (0 <= num) [default = %d]\n", pPars->nWinTfoLevs );
fprintf( pErr, "\t-F <num> : the max number of fanouts to skip (1 <= num) [default = %d]\n", pPars->nFanoutsMax ); fprintf( pErr, "\t-F <num> : the max number of fanouts to skip (1 <= num) [default = %d]\n", pPars->nFanoutsMax );
fprintf( pErr, "\t-D <num> : the max depth nodes to try (0 = no limit) [default = %d]\n", pPars->nDepthMax ); fprintf( pErr, "\t-D <num> : the max depth nodes to try (0 = no limit) [default = %d]\n", pPars->nDepthMax );
fprintf( pErr, "\t-M <num> : the max size of window to consider (0 = no limit) [default = %d]\n", pPars->nWinSizeMax ); fprintf( pErr, "\t-M <num> : the max size of window to consider (0 = no limit) [default = %d]\n", pPars->nWinSizeMax );
fprintf( pErr, "\t-L <num> : the largest increase in node level after resynthesis (0 <= num) [default = %d]\n", pPars->nGrowthLevel ); fprintf( pErr, "\t-L <num> : the max increase in node level after resynthesis (0 <= num) [default = %d]\n", pPars->nGrowthLevel );
fprintf( pErr, "\t-a : toggle minimizing area or edges [default = %s]\n", pPars->fArea? "area": "edges" );
fprintf( pErr, "\t-r : toggle resubstitution and dc-minimization [default = %s]\n", pPars->fResub? "resub": "dc-min" ); fprintf( pErr, "\t-r : toggle resubstitution and dc-minimization [default = %s]\n", pPars->fResub? "resub": "dc-min" );
fprintf( pErr, "\t-a : toggle minimizing area or area+edges [default = %s]\n", pPars->fArea? "area": "area+edges" );
fprintf( pErr, "\t-e : toggle high-effort resubstitution [default = %s]\n", pPars->fMoreEffort? "yes": "no" );
fprintf( pErr, "\t-s : toggle evaluation of edge swapping [default = %s]\n", pPars->fSwapEdge? "yes": "no" );
fprintf( pErr, "\t-v : toggle printing optimization summary [default = %s]\n", pPars->fVerbose? "yes": "no" ); fprintf( pErr, "\t-v : toggle printing optimization summary [default = %s]\n", pPars->fVerbose? "yes": "no" );
fprintf( pErr, "\t-w : toggle printing detailed stats for each node [default = %s]\n", pPars->fVeryVerbose? "yes": "no" ); fprintf( pErr, "\t-w : toggle printing detailed stats for each node [default = %s]\n", pPars->fVeryVerbose? "yes": "no" );
fprintf( pErr, "\t-h : print the command usage\n"); fprintf( pErr, "\t-h : print the command usage\n");
...@@ -6208,12 +6218,14 @@ int Abc_CommandGen( Abc_Frame_t * pAbc, int argc, char ** argv ) ...@@ -6208,12 +6218,14 @@ int Abc_CommandGen( Abc_Frame_t * pAbc, int argc, char ** argv )
int fSorter; int fSorter;
int fMesh; int fMesh;
int fFpga; int fFpga;
int fOneHot;
int fVerbose; int fVerbose;
char * FileName; char * FileName;
extern void Abc_GenAdder( char * pFileName, int nVars ); extern void Abc_GenAdder( char * pFileName, int nVars );
extern void Abc_GenSorter( char * pFileName, int nVars ); extern void Abc_GenSorter( char * pFileName, int nVars );
extern void Abc_GenMesh( char * pFileName, int nVars ); extern void Abc_GenMesh( char * pFileName, int nVars );
extern void Abc_GenFpga( char * pFileName, int nLutSize, int nLuts, int nVars ); extern void Abc_GenFpga( char * pFileName, int nLutSize, int nLuts, int nVars );
extern void Abc_GenOneHot( char * pFileName, int nVars );
pNtk = Abc_FrameReadNtk(pAbc); pNtk = Abc_FrameReadNtk(pAbc);
...@@ -6226,9 +6238,10 @@ int Abc_CommandGen( Abc_Frame_t * pAbc, int argc, char ** argv ) ...@@ -6226,9 +6238,10 @@ int Abc_CommandGen( Abc_Frame_t * pAbc, int argc, char ** argv )
fSorter = 0; fSorter = 0;
fMesh = 0; fMesh = 0;
fFpga = 0; fFpga = 0;
fOneHot = 0;
fVerbose = 0; fVerbose = 0;
Extra_UtilGetoptReset(); Extra_UtilGetoptReset();
while ( ( c = Extra_UtilGetopt( argc, argv, "Nasmfvh" ) ) != EOF ) while ( ( c = Extra_UtilGetopt( argc, argv, "Nasmftvh" ) ) != EOF )
{ {
switch ( c ) switch ( c )
{ {
...@@ -6255,6 +6268,9 @@ int Abc_CommandGen( Abc_Frame_t * pAbc, int argc, char ** argv ) ...@@ -6255,6 +6268,9 @@ int Abc_CommandGen( Abc_Frame_t * pAbc, int argc, char ** argv )
case 'f': case 'f':
fFpga ^= 1; fFpga ^= 1;
break; break;
case 't':
fOneHot ^= 1;
break;
case 'v': case 'v':
fVerbose ^= 1; fVerbose ^= 1;
break; break;
...@@ -6282,18 +6298,21 @@ int Abc_CommandGen( Abc_Frame_t * pAbc, int argc, char ** argv ) ...@@ -6282,18 +6298,21 @@ int Abc_CommandGen( Abc_Frame_t * pAbc, int argc, char ** argv )
Abc_GenFpga( FileName, 4, 3, 10 ); Abc_GenFpga( FileName, 4, 3, 10 );
// Abc_GenFpga( FileName, 2, 2, 3 ); // Abc_GenFpga( FileName, 2, 2, 3 );
// Abc_GenFpga( FileName, 3, 2, 5 ); // Abc_GenFpga( FileName, 3, 2, 5 );
else if ( fOneHot )
Abc_GenOneHot( FileName, nVars );
else else
printf( "Type of circuit is not specified.\n" ); printf( "Type of circuit is not specified.\n" );
return 0; return 0;
usage: usage:
fprintf( pErr, "usage: gen [-N] [-asmfvh] <file>\n" ); fprintf( pErr, "usage: gen [-N num] [-asmftvh] <file>\n" );
fprintf( pErr, "\t generates simple circuits\n" ); fprintf( pErr, "\t generates simple circuits\n" );
fprintf( pErr, "\t-N num : the number of variables [default = %d]\n", nVars ); fprintf( pErr, "\t-N num : the number of variables [default = %d]\n", nVars );
fprintf( pErr, "\t-a : generate ripple-carry adder [default = %s]\n", fAdder? "yes": "no" ); fprintf( pErr, "\t-a : generate ripple-carry adder [default = %s]\n", fAdder? "yes": "no" );
fprintf( pErr, "\t-s : generate a sorter [default = %s]\n", fSorter? "yes": "no" ); fprintf( pErr, "\t-s : generate a sorter [default = %s]\n", fSorter? "yes": "no" );
fprintf( pErr, "\t-m : generate a mesh [default = %s]\n", fMesh? "yes": "no" ); fprintf( pErr, "\t-m : generate a mesh [default = %s]\n", fMesh? "yes": "no" );
fprintf( pErr, "\t-f : generate a LUT FPGA structure [default = %s]\n", fFpga? "yes": "no" ); fprintf( pErr, "\t-f : generate a LUT FPGA structure [default = %s]\n", fFpga? "yes": "no" );
fprintf( pErr, "\t-t : generate one-hotness conditions [default = %s]\n", fOneHot? "yes": "no" );
fprintf( pErr, "\t-v : prints verbose information [default = %s]\n", fVerbose? "yes": "no" ); fprintf( pErr, "\t-v : prints verbose information [default = %s]\n", fVerbose? "yes": "no" );
fprintf( pErr, "\t-h : print the command usage\n"); fprintf( pErr, "\t-h : print the command usage\n");
fprintf( pErr, "\t<file> : output file name\n"); fprintf( pErr, "\t<file> : output file name\n");
...@@ -6634,7 +6653,7 @@ int Abc_CommandTest( Abc_Frame_t * pAbc, int argc, char ** argv ) ...@@ -6634,7 +6653,7 @@ int Abc_CommandTest( Abc_Frame_t * pAbc, int argc, char ** argv )
extern Abc_Ntk_t * Abc_NtkDarToCnf( Abc_Ntk_t * pNtk, char * pFileName ); extern Abc_Ntk_t * Abc_NtkDarToCnf( Abc_Ntk_t * pNtk, char * pFileName );
extern Abc_Ntk_t * Abc_NtkFilter( Abc_Ntk_t * pNtk ); extern Abc_Ntk_t * Abc_NtkFilter( Abc_Ntk_t * pNtk );
// extern Abc_Ntk_t * Abc_NtkDarRetime( Abc_Ntk_t * pNtk, int nStepsMax, int fVerbose ); // extern Abc_Ntk_t * Abc_NtkDarRetime( Abc_Ntk_t * pNtk, int nStepsMax, int fVerbose );
extern Abc_Ntk_t * Abc_NtkPcmTest( Abc_Ntk_t * pNtk, int fVerbose ); // extern Abc_Ntk_t * Abc_NtkPcmTest( Abc_Ntk_t * pNtk, int fVerbose );
extern Abc_NtkDarHaigRecord( Abc_Ntk_t * pNtk ); extern Abc_NtkDarHaigRecord( Abc_Ntk_t * pNtk );
// extern void Abc_NtkDarTestBlif( char * pFileName ); // extern void Abc_NtkDarTestBlif( char * pFileName );
......
...@@ -504,6 +504,48 @@ void Abc_GenFpga( char * pFileName, int nLutSize, int nLuts, int nVars ) ...@@ -504,6 +504,48 @@ void Abc_GenFpga( char * pFileName, int nLutSize, int nLuts, int nVars )
fclose( pFile ); fclose( pFile );
} }
/**Function*************************************************************
Synopsis [Generates structure of L K-LUTs implementing an N-var function.]
Description []
SideEffects []
SeeAlso []
***********************************************************************/
void Abc_GenOneHot( char * pFileName, int nVars )
{
FILE * pFile;
int i, k, Counter, nDigitsIn, nDigitsOut;
pFile = fopen( pFileName, "w" );
fprintf( pFile, "# One-hotness condition for %d vars generated by ABC on %s\n", nVars, Extra_TimeStamp() );
fprintf( pFile, ".model 1hot_%dvars\n", nVars );
fprintf( pFile, ".inputs" );
nDigitsIn = Extra_Base10Log( nVars );
for ( i = 0; i < nVars; i++ )
fprintf( pFile, " i%0*d", nDigitsIn, i );
fprintf( pFile, "\n" );
fprintf( pFile, ".outputs" );
nDigitsOut = Extra_Base10Log( nVars * (nVars - 1) / 2 );
for ( i = 0; i < nVars * (nVars - 1) / 2; i++ )
fprintf( pFile, " o%0*d", nDigitsOut, i );
fprintf( pFile, "\n" );
Counter = 0;
for ( i = 0; i < nVars; i++ )
for ( k = i+1; k < nVars; k++ )
{
fprintf( pFile, ".names i%0*d i%0*d o%0*d\n", nDigitsIn, i, nDigitsIn, k, nDigitsOut, Counter );
fprintf( pFile, "11 0\n" );
Counter++;
}
fprintf( pFile, ".end\n" );
fprintf( pFile, "\n" );
fclose( pFile );
}
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
/// END OF FILE /// /// END OF FILE ///
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
......
...@@ -1130,6 +1130,7 @@ int Abc_NtkCombinePos( Abc_Ntk_t * pNtk, int fAnd ) ...@@ -1130,6 +1130,7 @@ int Abc_NtkCombinePos( Abc_Ntk_t * pNtk, int fAnd )
pNode = Abc_NtkCreatePo( pNtk ); pNode = Abc_NtkCreatePo( pNtk );
Abc_ObjAddFanin( pNode, pMiter ); Abc_ObjAddFanin( pNode, pMiter );
Abc_ObjAssignName( pNode, "miter", NULL ); Abc_ObjAssignName( pNode, "miter", NULL );
Abc_NtkOrderCisCos( pNtk );
// make sure that everything is okay // make sure that everything is okay
if ( !Abc_NtkCheck( pNtk ) ) if ( !Abc_NtkCheck( pNtk ) )
{ {
......
...@@ -46,6 +46,7 @@ static int CmdCommandRecall ( Abc_Frame_t * pAbc, int argc, char ** argv ...@@ -46,6 +46,7 @@ static int CmdCommandRecall ( Abc_Frame_t * pAbc, int argc, char ** argv
static int CmdCommandEmpty ( Abc_Frame_t * pAbc, int argc, char ** argv ); static int CmdCommandEmpty ( Abc_Frame_t * pAbc, int argc, char ** argv );
#ifdef WIN32 #ifdef WIN32
static int CmdCommandLs ( Abc_Frame_t * pAbc, int argc, char ** argv ); static int CmdCommandLs ( Abc_Frame_t * pAbc, int argc, char ** argv );
static int CmdCommandScrGen ( Abc_Frame_t * pAbc, int argc, char ** argv );
#endif #endif
static int CmdCommandSis ( Abc_Frame_t * pAbc, int argc, char ** argv ); static int CmdCommandSis ( Abc_Frame_t * pAbc, int argc, char ** argv );
static int CmdCommandMvsis ( Abc_Frame_t * pAbc, int argc, char ** argv ); static int CmdCommandMvsis ( Abc_Frame_t * pAbc, int argc, char ** argv );
...@@ -86,6 +87,7 @@ void Cmd_Init( Abc_Frame_t * pAbc ) ...@@ -86,6 +87,7 @@ void Cmd_Init( Abc_Frame_t * pAbc )
Cmd_CommandAdd( pAbc, "Basic", "empty", CmdCommandEmpty, 0); Cmd_CommandAdd( pAbc, "Basic", "empty", CmdCommandEmpty, 0);
#ifdef WIN32 #ifdef WIN32
Cmd_CommandAdd( pAbc, "Basic", "ls", CmdCommandLs, 0 ); Cmd_CommandAdd( pAbc, "Basic", "ls", CmdCommandLs, 0 );
Cmd_CommandAdd( pAbc, "Basic", "scrgen", CmdCommandScrGen, 0 );
#endif #endif
Cmd_CommandAdd( pAbc, "Various", "sis", CmdCommandSis, 1); Cmd_CommandAdd( pAbc, "Various", "sis", CmdCommandSis, 1);
...@@ -1068,17 +1070,6 @@ usage: ...@@ -1068,17 +1070,6 @@ usage:
#ifdef WIN32 #ifdef WIN32
/**Function*************************************************************
Synopsis [Command to print the contents of the current directory (Windows).]
Description []
SideEffects []
SeeAlso []
***********************************************************************/
#include <io.h> #include <io.h>
// these structures are defined in <io.h> but are for some reason invisible // these structures are defined in <io.h> but are for some reason invisible
...@@ -1097,6 +1088,20 @@ extern long _findfirst( char *filespec, struct _finddata_t *fileinfo ); ...@@ -1097,6 +1088,20 @@ extern long _findfirst( char *filespec, struct _finddata_t *fileinfo );
extern int _findnext( long handle, struct _finddata_t *fileinfo ); extern int _findnext( long handle, struct _finddata_t *fileinfo );
extern int _findclose( long handle ); extern int _findclose( long handle );
extern char * _getcwd( char * buffer, int maxlen );
extern int _chdir( const char *dirname );
/**Function*************************************************************
Synopsis [Command to print the contents of the current directory (Windows).]
Description []
SideEffects []
SeeAlso []
***********************************************************************/
int CmdCommandLs( Abc_Frame_t * pAbc, int argc, char **argv ) int CmdCommandLs( Abc_Frame_t * pAbc, int argc, char **argv )
{ {
struct _finddata_t c_file; struct _finddata_t c_file;
...@@ -1181,15 +1186,238 @@ int CmdCommandLs( Abc_Frame_t * pAbc, int argc, char **argv ) ...@@ -1181,15 +1186,238 @@ int CmdCommandLs( Abc_Frame_t * pAbc, int argc, char **argv )
return 0; return 0;
usage: usage:
fprintf( pAbc->Err, "Usage: ls [-l] [-b]\n" ); fprintf( pAbc->Err, "usage: ls [-l] [-b]\n" );
fprintf( pAbc->Err, " print the file names in the current directory\n" ); fprintf( pAbc->Err, " print the file names in the current directory\n" );
fprintf( pAbc->Err, " -l : print in the long format [default = short]\n" ); fprintf( pAbc->Err, " -l : print in the long format [default = short]\n" );
fprintf( pAbc->Err, " -b : print only .mv files [default = all]\n" ); fprintf( pAbc->Err, " -b : print only .mv files [default = all]\n" );
return 1; return 1;
} }
#endif
/**Function*************************************************************
Synopsis [Generates the script for running ABC.]
Description []
SideEffects []
SeeAlso []
***********************************************************************/
int CmdCommandScrGen( Abc_Frame_t * pAbc, int argc, char **argv )
{
struct _finddata_t c_file;
long hFile;
FILE * pFile = NULL;
char * pFileStr = "test.s";
char * pDirStr = NULL;
char * pComStr = "ps";
char * pWriteStr = NULL;
char Buffer[1000], Line[2000];
int nFileNameMax, nFileNameCur;
int Counter = 0;
int fUseCurrent;
char c;
fUseCurrent = 0;
Extra_UtilGetoptReset();
while ( (c = Extra_UtilGetopt(argc, argv, "FDCWch") ) != EOF )
{
switch (c)
{
case 'F':
if ( globalUtilOptind >= argc )
{
fprintf( pAbc->Err, "Command line switch \"-F\" should be followed by a string.\n" );
goto usage;
}
pFileStr = argv[globalUtilOptind];
globalUtilOptind++;
break;
case 'D':
if ( globalUtilOptind >= argc )
{
fprintf( pAbc->Err, "Command line switch \"-D\" should be followed by a string.\n" );
goto usage;
}
pDirStr = argv[globalUtilOptind];
globalUtilOptind++;
break;
case 'C':
if ( globalUtilOptind >= argc )
{
fprintf( pAbc->Err, "Command line switch \"-C\" should be followed by a string.\n" );
goto usage;
}
pComStr = argv[globalUtilOptind];
globalUtilOptind++;
break;
case 'W':
if ( globalUtilOptind >= argc )
{
fprintf( pAbc->Err, "Command line switch \"-W\" should be followed by a string.\n" );
goto usage;
}
pWriteStr = argv[globalUtilOptind];
globalUtilOptind++;
break;
case 'c':
fUseCurrent ^= 1;
break;
default:
goto usage;
}
}
// printf( "File = %s.\n", pFileStr );
// printf( "Dir = %s.\n", pDirStr );
// printf( "Com = %s.\n", pComStr );
if ( pDirStr == NULL )
fUseCurrent = 1;
if ( _getcwd( Buffer, 1000 ) == NULL )
{
printf( "Cannot get the current directory.\n" );
return 0;
}
if ( fUseCurrent )
pFile = fopen( pFileStr, "w" );
if ( pDirStr )
{
if ( _chdir(pDirStr) )
{
printf( "Cannot change to directory: %s\n", pDirStr );
return 0;
}
}
if ( !fUseCurrent )
pFile = fopen( pFileStr, "w" );
if ( pFile == NULL )
{
printf( "Cannot open file %s.\n", pFileStr );
if ( pDirStr && _chdir(Buffer) )
{
printf( "Cannot change to the current directory: %s\n", Buffer );
return 0;
}
return 0;
}
// find the first file in the directory
if( (hFile = _findfirst( "*.*", &c_file )) == -1L )
{
if ( pDirStr )
printf( "No files in the current directory.\n" );
else
printf( "No files in directory: %s\n", pDirStr );
if ( pDirStr && _chdir(Buffer) )
{
printf( "Cannot change to the current directory: %s\n", Buffer );
return 0;
}
}
// get the longest file name
{
nFileNameMax = 0;
do
{
// skip script and txt files
nFileNameCur = strlen(c_file.name);
if ( c_file.name[nFileNameCur-1] == '.' )
continue;
if ( nFileNameCur > 2 &&
c_file.name[nFileNameCur-1] == 's' &&
c_file.name[nFileNameCur-2] == '.' )
continue;
if ( nFileNameCur > 4 &&
c_file.name[nFileNameCur-1] == 't' &&
c_file.name[nFileNameCur-2] == 'x' &&
c_file.name[nFileNameCur-3] == 't' &&
c_file.name[nFileNameCur-4] == '.' )
continue;
if ( nFileNameMax < nFileNameCur )
nFileNameMax = nFileNameCur;
}
while( _findnext( hFile, &c_file ) == 0 );
_findclose( hFile );
}
// print the script file
{
if( (hFile = _findfirst( "*.*", &c_file )) == -1L )
{
if ( pDirStr )
printf( "No files in the current directory.\n" );
else
printf( "No files in directory: %s\n", pDirStr );
}
fprintf( pFile, "# Script file produced by ABC on %s\n", Extra_TimeStamp() );
fprintf( pFile, "# Command line was: scrgen -F %s -D %s -C \"%s\"%s%s\n",
pFileStr, pDirStr, pComStr, pWriteStr?" -W ":"", pWriteStr?pWriteStr:"" );
do
{
// skip script and txt files
nFileNameCur = strlen(c_file.name);
if ( c_file.name[nFileNameCur-1] == '.' )
continue;
if ( nFileNameCur > 2 &&
c_file.name[nFileNameCur-1] == 's' &&
c_file.name[nFileNameCur-2] == '.' )
continue;
if ( nFileNameCur > 4 &&
c_file.name[nFileNameCur-1] == 't' &&
c_file.name[nFileNameCur-2] == 'x' &&
c_file.name[nFileNameCur-3] == 't' &&
c_file.name[nFileNameCur-4] == '.' )
continue;
sprintf( Line, "r %s%s%-*s ; %s", pDirStr?pDirStr:"", pDirStr?"/":"", nFileNameMax, c_file.name, pComStr );
for ( c = (int)strlen(Line)-1; c >= 0; c-- )
if ( Line[c] == '\\' )
Line[c] = '/';
fprintf( pFile, "%s", Line );
if ( pWriteStr )
{
sprintf( Line, " ; w %s/%-*s", pWriteStr, nFileNameMax, c_file.name );
for ( c = (int)strlen(Line)-1; c >= 0; c-- )
if ( Line[c] == '\\' )
Line[c] = '/';
fprintf( pFile, "%s", Line );
}
fprintf( pFile, "\n", Line );
}
while( _findnext( hFile, &c_file ) == 0 );
_findclose( hFile );
}
fclose( pFile );
if ( pDirStr && _chdir(Buffer) )
{
printf( "Cannot change to the current directory: %s\n", Buffer );
return 0;
}
// report
if ( fUseCurrent )
printf( "Script file \"%s\" was saved in the current directory.\n", pFileStr );
else
printf( "Script file \"%s\" was saved in directory: %s\n", pFileStr, pDirStr );
return 0;
usage:
fprintf( pAbc->Err, "usage: scrgen -F <str> -D <str> -C <str> -W <str> -ch\n" );
fprintf( pAbc->Err, "\t generates script for running ABC\n" );
fprintf( pAbc->Err, "\t-F str : the name of the script file [default = \"test.s\"]\n" );
fprintf( pAbc->Err, "\t-D str : the directory to read files from [default = current]\n" );
fprintf( pAbc->Err, "\t-C str : the sequence of commands to run [default = \"ps\"]\n" );
fprintf( pAbc->Err, "\t-W str : the directory to write the resulting files [default = no writing]\n" );
fprintf( pAbc->Err, "\t-c : toggle placing file in current/target dir [default = %s]\n", fUseCurrent? "current": "target" );
fprintf( pAbc->Err, "\t-h : print the command usage\n\n");
fprintf( pAbc->Err, "\tExample : scrgen -F test1.s -D a/in -C \"ps; st; ps\" -W a/out\n" );
return 1;
}
#endif
#ifdef WIN32 #ifdef WIN32
#define unlink _unlink #define unlink _unlink
......
...@@ -218,7 +218,20 @@ Abc_Ntk_t * Io_ReadBlifNetworkOne( Io_ReadBlif_t * p ) ...@@ -218,7 +218,20 @@ Abc_Ntk_t * Io_ReadBlifNetworkOne( Io_ReadBlif_t * p )
p->pNtkCur = pNtk = Abc_NtkAlloc( ABC_NTK_NETLIST, ABC_FUNC_SOP, 1 ); p->pNtkCur = pNtk = Abc_NtkAlloc( ABC_NTK_NETLIST, ABC_FUNC_SOP, 1 );
// read the model name // read the model name
if ( strcmp( p->vTokens->pArray[0], ".model" ) == 0 ) if ( strcmp( p->vTokens->pArray[0], ".model" ) == 0 )
pNtk->pName = Extra_UtilStrsav( p->vTokens->pArray[1] ); {
char * pToken, * pPivot;
if ( Vec_PtrSize(p->vTokens) != 2 )
{
p->LineCur = Extra_FileReaderGetLineNumber(p->pReader, 0);
sprintf( p->sError, "The .model line does not have exactly two entries." );
Io_ReadBlifPrintErrorMessage( p );
return NULL;
}
for ( pPivot = pToken = Vec_PtrEntry(p->vTokens, 1); *pToken; pToken++ )
if ( *pToken == '/' || *pToken == '\\' )
pPivot = pToken+1;
pNtk->pName = Extra_UtilStrsav( pPivot );
}
else if ( strcmp( p->vTokens->pArray[0], ".exdc" ) != 0 ) else if ( strcmp( p->vTokens->pArray[0], ".exdc" ) != 0 )
{ {
printf( "%s: File parsing skipped after line %d (\"%s\").\n", p->pFileName, printf( "%s: File parsing skipped after line %d (\"%s\").\n", p->pFileName,
......
...@@ -90,7 +90,7 @@ static Io_MvMod_t * Io_MvModAlloc(); ...@@ -90,7 +90,7 @@ static Io_MvMod_t * Io_MvModAlloc();
static void Io_MvModFree( Io_MvMod_t * p ); static void Io_MvModFree( Io_MvMod_t * p );
static char * Io_MvLoadFile( char * pFileName ); static char * Io_MvLoadFile( char * pFileName );
static void Io_MvReadPreparse( Io_MvMan_t * p ); static void Io_MvReadPreparse( Io_MvMan_t * p );
static void Io_MvReadInterfaces( Io_MvMan_t * p ); static int Io_MvReadInterfaces( Io_MvMan_t * p );
static Abc_Lib_t * Io_MvParse( Io_MvMan_t * p ); static Abc_Lib_t * Io_MvParse( Io_MvMan_t * p );
static int Io_MvParseLineModel( Io_MvMod_t * p, char * pLine ); static int Io_MvParseLineModel( Io_MvMod_t * p, char * pLine );
static int Io_MvParseLineInputs( Io_MvMod_t * p, char * pLine ); static int Io_MvParseLineInputs( Io_MvMod_t * p, char * pLine );
...@@ -128,7 +128,7 @@ Abc_Ntk_t * Io_ReadBlifMv( char * pFileName, int fBlifMv, int fCheck ) ...@@ -128,7 +128,7 @@ Abc_Ntk_t * Io_ReadBlifMv( char * pFileName, int fBlifMv, int fCheck )
FILE * pFile; FILE * pFile;
Io_MvMan_t * p; Io_MvMan_t * p;
Abc_Ntk_t * pNtk; Abc_Ntk_t * pNtk;
Abc_Lib_t * pDesign; Abc_Lib_t * pDesign = NULL;
char * pDesignName; char * pDesignName;
int RetValue, i; int RetValue, i;
...@@ -161,10 +161,9 @@ Abc_Ntk_t * Io_ReadBlifMv( char * pFileName, int fBlifMv, int fCheck ) ...@@ -161,10 +161,9 @@ Abc_Ntk_t * Io_ReadBlifMv( char * pFileName, int fBlifMv, int fCheck )
p->pDesign->pManFunc = NULL; p->pDesign->pManFunc = NULL;
// prepare the file for parsing // prepare the file for parsing
Io_MvReadPreparse( p ); Io_MvReadPreparse( p );
// parse interfaces of each network // parse interfaces of each network and construct the network
Io_MvReadInterfaces( p ); if ( Io_MvReadInterfaces( p ) )
// construct the network pDesign = Io_MvParse( p );
pDesign = Io_MvParse( p );
if ( p->sError[0] ) if ( p->sError[0] )
fprintf( stdout, "%s\n", p->sError ); fprintf( stdout, "%s\n", p->sError );
Io_MvFree( p ); Io_MvFree( p );
...@@ -646,7 +645,7 @@ static void Io_MvReadPreparse( Io_MvMan_t * p ) ...@@ -646,7 +645,7 @@ static void Io_MvReadPreparse( Io_MvMan_t * p )
SeeAlso [] SeeAlso []
***********************************************************************/ ***********************************************************************/
static void Io_MvReadInterfaces( Io_MvMan_t * p ) static int Io_MvReadInterfaces( Io_MvMan_t * p )
{ {
Io_MvMod_t * pMod; Io_MvMod_t * pMod;
char * pLine; char * pLine;
...@@ -656,22 +655,23 @@ static void Io_MvReadInterfaces( Io_MvMan_t * p ) ...@@ -656,22 +655,23 @@ static void Io_MvReadInterfaces( Io_MvMan_t * p )
{ {
// parse the model // parse the model
if ( !Io_MvParseLineModel( pMod, pMod->pName ) ) if ( !Io_MvParseLineModel( pMod, pMod->pName ) )
return; return 0;
// add model to the design // add model to the design
if ( !Abc_LibAddModel( p->pDesign, pMod->pNtk ) ) if ( !Abc_LibAddModel( p->pDesign, pMod->pNtk ) )
{ {
sprintf( p->sError, "Line %d: Model %s is defined twice.", Io_MvGetLine(p, pMod->pName), pMod->pName ); sprintf( p->sError, "Line %d: Model %s is defined twice.", Io_MvGetLine(p, pMod->pName), pMod->pName );
return; return 0;
} }
// parse the inputs // parse the inputs
Vec_PtrForEachEntry( pMod->vInputs, pLine, k ) Vec_PtrForEachEntry( pMod->vInputs, pLine, k )
if ( !Io_MvParseLineInputs( pMod, pLine ) ) if ( !Io_MvParseLineInputs( pMod, pLine ) )
return; return 0;
// parse the outputs // parse the outputs
Vec_PtrForEachEntry( pMod->vOutputs, pLine, k ) Vec_PtrForEachEntry( pMod->vOutputs, pLine, k )
if ( !Io_MvParseLineOutputs( pMod, pLine ) ) if ( !Io_MvParseLineOutputs( pMod, pLine ) )
return; return 0;
} }
return 1;
} }
...@@ -767,7 +767,7 @@ static Abc_Lib_t * Io_MvParse( Io_MvMan_t * p ) ...@@ -767,7 +767,7 @@ static Abc_Lib_t * Io_MvParse( Io_MvMan_t * p )
static int Io_MvParseLineModel( Io_MvMod_t * p, char * pLine ) static int Io_MvParseLineModel( Io_MvMod_t * p, char * pLine )
{ {
Vec_Ptr_t * vTokens = p->pMan->vTokens; Vec_Ptr_t * vTokens = p->pMan->vTokens;
char * pToken; char * pToken, * pPivot;
Io_MvSplitIntoTokens( vTokens, pLine, '\0' ); Io_MvSplitIntoTokens( vTokens, pLine, '\0' );
pToken = Vec_PtrEntry( vTokens, 0 ); pToken = Vec_PtrEntry( vTokens, 0 );
assert( !strcmp(pToken, "model") ); assert( !strcmp(pToken, "model") );
...@@ -782,7 +782,10 @@ static int Io_MvParseLineModel( Io_MvMod_t * p, char * pLine ) ...@@ -782,7 +782,10 @@ static int Io_MvParseLineModel( Io_MvMod_t * p, char * pLine )
p->pNtk = Abc_NtkAlloc( ABC_NTK_NETLIST, ABC_FUNC_BLIFMV, 1 ); p->pNtk = Abc_NtkAlloc( ABC_NTK_NETLIST, ABC_FUNC_BLIFMV, 1 );
else else
p->pNtk = Abc_NtkAlloc( ABC_NTK_NETLIST, ABC_FUNC_SOP, 1 ); p->pNtk = Abc_NtkAlloc( ABC_NTK_NETLIST, ABC_FUNC_SOP, 1 );
p->pNtk->pName = Extra_UtilStrsav( Vec_PtrEntry(vTokens, 1) ); for ( pPivot = pToken = Vec_PtrEntry(vTokens, 1); *pToken; pToken++ )
if ( *pToken == '/' || *pToken == '\\' )
pPivot = pToken+1;
p->pNtk->pName = Extra_UtilStrsav( pPivot );
return 1; return 1;
} }
......
...@@ -705,6 +705,24 @@ static inline void Vec_PtrCleanSimInfo( Vec_Ptr_t * vInfo, int iWord, int nWords ...@@ -705,6 +705,24 @@ static inline void Vec_PtrCleanSimInfo( Vec_Ptr_t * vInfo, int iWord, int nWords
/**Function************************************************************* /**Function*************************************************************
Synopsis [Cleans simulation info of each entry beginning with iWord.]
Description []
SideEffects []
SeeAlso []
***********************************************************************/
static inline void Vec_PtrFillSimInfo( Vec_Ptr_t * vInfo, int iWord, int nWords )
{
int i;
for ( i = 0; i < vInfo->nSize; i++ )
memset( (char*)Vec_PtrEntry(vInfo,i) + 4*iWord, 0xFF, 4*(nWords-iWord) );
}
/**Function*************************************************************
Synopsis [Resizes the array of simulation info.] Synopsis [Resizes the array of simulation info.]
Description [Doubles the number of objects for which siminfo is allocated.] Description [Doubles the number of objects for which siminfo is allocated.]
......
...@@ -49,6 +49,8 @@ struct Mfs_Par_t_ ...@@ -49,6 +49,8 @@ struct Mfs_Par_t_
int nGrowthLevel; // the maximum allowed growth in level int nGrowthLevel; // the maximum allowed growth in level
int fResub; // performs resubstitution int fResub; // performs resubstitution
int fArea; // performs optimization for area int fArea; // performs optimization for area
int fMoreEffort; // performs high-affort minimization
int fSwapEdge; // performs edge swapping
int fDelay; // performs optimization for delay int fDelay; // performs optimization for delay
int fVerbose; // enable basic stats int fVerbose; // enable basic stats
int fVeryVerbose; // enable detailed stats int fVeryVerbose; // enable detailed stats
......
...@@ -74,10 +74,14 @@ clk = clock(); ...@@ -74,10 +74,14 @@ clk = clock();
return 1; return 1;
} }
// solve the SAT problem // solve the SAT problem
if ( p->pPars->fArea ) if ( p->pPars->fSwapEdge )
Abc_NtkMfsResubArea( p, pNode ); Abc_NtkMfsEdgeSwapEval( p, pNode );
else else
Abc_NtkMfsResubEdge( p, pNode ); {
Abc_NtkMfsResubNode( p, pNode );
if ( p->pPars->fMoreEffort )
Abc_NtkMfsResubNode2( p, pNode );
}
p->timeSat += clock() - clk; p->timeSat += clock() - clk;
return 1; return 1;
} }
...@@ -140,12 +144,13 @@ int Abc_NtkMfs( Abc_Ntk_t * pNtk, Mfs_Par_t * pPars ) ...@@ -140,12 +144,13 @@ int Abc_NtkMfs( Abc_Ntk_t * pNtk, Mfs_Par_t * pPars )
ProgressBar * pProgress; ProgressBar * pProgress;
Mfs_Man_t * p; Mfs_Man_t * p;
Abc_Obj_t * pObj; Abc_Obj_t * pObj;
int i, clk = clock(); int i, nFaninMax, clk = clock();
int nTotalNodesBeg = Abc_NtkNodeNum(pNtk); int nTotalNodesBeg = Abc_NtkNodeNum(pNtk);
int nTotalEdgesBeg = Abc_NtkGetTotalFanins(pNtk); int nTotalEdgesBeg = Abc_NtkGetTotalFanins(pNtk);
assert( Abc_NtkIsLogic(pNtk) ); assert( Abc_NtkIsLogic(pNtk) );
if ( Abc_NtkGetFaninMax(pNtk) > MFS_FANIN_MAX ) nFaninMax = Abc_NtkGetFaninMax(pNtk);
if ( nFaninMax > MFS_FANIN_MAX )
{ {
printf( "Some nodes have more than %d fanins. Quitting.\n", MFS_FANIN_MAX ); printf( "Some nodes have more than %d fanins. Quitting.\n", MFS_FANIN_MAX );
return 1; return 1;
...@@ -162,7 +167,8 @@ int Abc_NtkMfs( Abc_Ntk_t * pNtk, Mfs_Par_t * pPars ) ...@@ -162,7 +167,8 @@ int Abc_NtkMfs( Abc_Ntk_t * pNtk, Mfs_Par_t * pPars )
// start the manager // start the manager
p = Mfs_ManAlloc( pPars ); p = Mfs_ManAlloc( pPars );
p->pNtk = pNtk; p->pNtk = pNtk;
p->nFaninMax = nFaninMax;
if ( pNtk->pExcare ) if ( pNtk->pExcare )
{ {
Abc_Ntk_t * pTemp; Abc_Ntk_t * pTemp;
...@@ -170,7 +176,7 @@ int Abc_NtkMfs( Abc_Ntk_t * pNtk, Mfs_Par_t * pPars ) ...@@ -170,7 +176,7 @@ int Abc_NtkMfs( Abc_Ntk_t * pNtk, Mfs_Par_t * pPars )
p->pCare = Abc_NtkToDar( pTemp, 0 ); p->pCare = Abc_NtkToDar( pTemp, 0 );
Abc_NtkDelete( pTemp ); Abc_NtkDelete( pTemp );
} }
if ( pPars->fVerbose ) // if ( pPars->fVerbose )
{ {
if ( p->pCare != NULL ) if ( p->pCare != NULL )
printf( "Performing optimization with %d external care clauses.\n", Aig_ManPoNum(p->pCare) ); printf( "Performing optimization with %d external care clauses.\n", Aig_ManPoNum(p->pCare) );
......
...@@ -49,6 +49,7 @@ struct Mfs_Man_t_ ...@@ -49,6 +49,7 @@ struct Mfs_Man_t_
Mfs_Par_t * pPars; Mfs_Par_t * pPars;
Abc_Ntk_t * pNtk; Abc_Ntk_t * pNtk;
Aig_Man_t * pCare; Aig_Man_t * pCare;
int nFaninMax;
// intermeditate data for the node // intermeditate data for the node
Vec_Ptr_t * vRoots; // the roots of the window Vec_Ptr_t * vRoots; // the roots of the window
Vec_Ptr_t * vSupp; // the support of the window Vec_Ptr_t * vSupp; // the support of the window
...@@ -78,7 +79,6 @@ struct Mfs_Man_t_ ...@@ -78,7 +79,6 @@ struct Mfs_Man_t_
// performance statistics // performance statistics
int nNodesTried; int nNodesTried;
int nNodesResub; int nNodesResub;
int nNodesGained;
int nMintsCare; int nMintsCare;
int nMintsTotal; int nMintsTotal;
int nNodesBad; int nNodesBad;
...@@ -119,8 +119,10 @@ extern Mfs_Man_t * Mfs_ManAlloc( Mfs_Par_t * pPars ); ...@@ -119,8 +119,10 @@ extern Mfs_Man_t * Mfs_ManAlloc( Mfs_Par_t * pPars );
extern void Mfs_ManStop( Mfs_Man_t * p ); extern void Mfs_ManStop( Mfs_Man_t * p );
extern void Mfs_ManClean( Mfs_Man_t * p ); extern void Mfs_ManClean( Mfs_Man_t * p );
/*=== mfsResub.c ==========================================================*/ /*=== mfsResub.c ==========================================================*/
extern int Abc_NtkMfsResubArea( Mfs_Man_t * p, Abc_Obj_t * pNode ); extern void Abc_NtkMfsPrintResubStats( Mfs_Man_t * p );
extern int Abc_NtkMfsResubEdge( Mfs_Man_t * p, Abc_Obj_t * pNode ); extern int Abc_NtkMfsEdgeSwapEval( Mfs_Man_t * p, Abc_Obj_t * pNode );
extern int Abc_NtkMfsResubNode( Mfs_Man_t * p, Abc_Obj_t * pNode );
extern int Abc_NtkMfsResubNode2( Mfs_Man_t * p, Abc_Obj_t * pNode );
/*=== mfsSat.c ==========================================================*/ /*=== mfsSat.c ==========================================================*/
extern void Abc_NtkMfsSolveSat( Mfs_Man_t * p, Abc_Obj_t * pNode ); extern void Abc_NtkMfsSolveSat( Mfs_Man_t * p, Abc_Obj_t * pNode );
/*=== mfsStrash.c ==========================================================*/ /*=== mfsStrash.c ==========================================================*/
......
...@@ -85,12 +85,12 @@ void Mfs_ManClean( Mfs_Man_t * p ) ...@@ -85,12 +85,12 @@ void Mfs_ManClean( Mfs_Man_t * p )
if ( p->vDivs ) if ( p->vDivs )
Vec_PtrFree( p->vDivs ); Vec_PtrFree( p->vDivs );
p->pAigWin = NULL; p->pAigWin = NULL;
p->pCnf = NULL; p->pCnf = NULL;
p->pSat = NULL; p->pSat = NULL;
p->vRoots = NULL; p->vRoots = NULL;
p->vSupp = NULL; p->vSupp = NULL;
p->vNodes = NULL; p->vNodes = NULL;
p->vDivs = NULL; p->vDivs = NULL;
} }
/**Function************************************************************* /**Function*************************************************************
...@@ -117,6 +117,11 @@ void Mfs_ManPrint( Mfs_Man_t * p ) ...@@ -117,6 +117,11 @@ void Mfs_ManPrint( Mfs_Man_t * p )
printf( "\n" ); printf( "\n" );
printf( "Nodes = %d. Tried = %d. Resub = %d. Skipped = %d. SAT calls = %d.\n", printf( "Nodes = %d. Tried = %d. Resub = %d. Skipped = %d. SAT calls = %d.\n",
Abc_NtkNodeNum(p->pNtk), p->nNodesTried, p->nNodesResub, p->nNodesBad, p->nSatCalls ); Abc_NtkNodeNum(p->pNtk), p->nNodesTried, p->nNodesResub, p->nNodesBad, p->nSatCalls );
if ( p->pPars->fSwapEdge )
printf( "Swappable edges = %d. Total edges = %d. Ratio = %5.2f.\n",
p->nNodesResub, Abc_NtkGetTotalFanins(p->pNtk), 1.00 * p->nNodesResub / Abc_NtkGetTotalFanins(p->pNtk) );
else
Abc_NtkMfsPrintResubStats( p );
} }
else else
{ {
......
...@@ -57,6 +57,35 @@ void Abc_NtkMfsUpdateNetwork( Mfs_Man_t * p, Abc_Obj_t * pObj, Vec_Ptr_t * vFani ...@@ -57,6 +57,35 @@ void Abc_NtkMfsUpdateNetwork( Mfs_Man_t * p, Abc_Obj_t * pObj, Vec_Ptr_t * vFani
/**Function************************************************************* /**Function*************************************************************
Synopsis [Prints resub candidate stats.]
Description []
SideEffects []
SeeAlso []
***********************************************************************/
void Abc_NtkMfsPrintResubStats( Mfs_Man_t * p )
{
Abc_Obj_t * pFanin, * pNode;
int i, k, nAreaCrits = 0, nAreaExpanse = 0;
int nFaninMax = Abc_NtkGetFaninMax(p->pNtk);
Abc_NtkForEachNode( p->pNtk, pNode, i )
Abc_ObjForEachFanin( pNode, pFanin, k )
{
if ( !Abc_ObjIsCi(pFanin) && Abc_ObjFanoutNum(pFanin) == 1 )
{
nAreaCrits++;
nAreaExpanse += (int)(Abc_ObjFaninNum(pNode) < nFaninMax);
}
}
printf( "Total area-critical fanins = %d. Belonging to expandable nodes = %d.\n",
nAreaCrits, nAreaExpanse );
}
/**Function*************************************************************
Synopsis [Tries resubstitution.] Synopsis [Tries resubstitution.]
Description [Returns 1 if it is feasible, or 0 if c-ex is found.] Description [Returns 1 if it is feasible, or 0 if c-ex is found.]
...@@ -68,7 +97,7 @@ void Abc_NtkMfsUpdateNetwork( Mfs_Man_t * p, Abc_Obj_t * pObj, Vec_Ptr_t * vFani ...@@ -68,7 +97,7 @@ void Abc_NtkMfsUpdateNetwork( Mfs_Man_t * p, Abc_Obj_t * pObj, Vec_Ptr_t * vFani
***********************************************************************/ ***********************************************************************/
int Abc_NtkMfsTryResubOnce( Mfs_Man_t * p, int * pCands, int nCands ) int Abc_NtkMfsTryResubOnce( Mfs_Man_t * p, int * pCands, int nCands )
{ {
unsigned * pData, * pDataTot; unsigned * pData;
int RetValue, iVar, i; int RetValue, iVar, i;
p->nSatCalls++; p->nSatCalls++;
RetValue = sat_solver_solve( p->pSat, pCands, pCands + nCands, (sint64)0, (sint64)0, (sint64)0, (sint64)0 ); RetValue = sat_solver_solve( p->pSat, pCands, pCands + nCands, (sint64)0, (sint64)0, (sint64)0, (sint64)0 );
...@@ -77,17 +106,16 @@ int Abc_NtkMfsTryResubOnce( Mfs_Man_t * p, int * pCands, int nCands ) ...@@ -77,17 +106,16 @@ int Abc_NtkMfsTryResubOnce( Mfs_Man_t * p, int * pCands, int nCands )
return 1; return 1;
p->nSatCexes++; p->nSatCexes++;
// store the counter-example // store the counter-example
pData = Vec_PtrEntry( p->vDivCexes, p->nCexes++ );
assert( pData[0] == 0 );
Vec_IntForEachEntry( p->vProjVars, iVar, i ) Vec_IntForEachEntry( p->vProjVars, iVar, i )
{ {
if ( sat_solver_var_value( p->pSat, iVar ) ) pData = Vec_PtrEntry( p->vDivCexes, i );
Aig_InfoSetBit( pData, i ); if ( !sat_solver_var_value( p->pSat, iVar ) ) // remove 0s!!!
{
assert( Aig_InfoHasBit(pData, p->nCexes) );
Aig_InfoXorBit( pData, p->nCexes );
}
} }
// AND the result with the previous ones p->nCexes++;
pDataTot = Vec_PtrEntry( p->vDivCexes, Vec_PtrSize(p->vDivs) );
for ( i = 0; i < p->nDivWords; i++ )
pDataTot[i] &= pData[i];
return 0; return 0;
} }
...@@ -102,22 +130,19 @@ int Abc_NtkMfsTryResubOnce( Mfs_Man_t * p, int * pCands, int nCands ) ...@@ -102,22 +130,19 @@ int Abc_NtkMfsTryResubOnce( Mfs_Man_t * p, int * pCands, int nCands )
SeeAlso [] SeeAlso []
***********************************************************************/ ***********************************************************************/
int Abc_NtkMfsSolveSatResub( Mfs_Man_t * p, Abc_Obj_t * pNode, int iFanin, int fOnlyRemove ) int Abc_NtkMfsSolveSatResub( Mfs_Man_t * p, Abc_Obj_t * pNode, int iFanin, int fOnlyRemove, int fSkipUpdate )
{ {
int fVeryVerbose = p->pPars->fVeryVerbose && Vec_PtrSize(p->vDivs) < 80; int fVeryVerbose = p->pPars->fVeryVerbose && Vec_PtrSize(p->vDivs) < 80;
unsigned * pData; unsigned * pData;
int pCands[MFS_FANIN_MAX]; int pCands[MFS_FANIN_MAX];
int iVar, i, nCands, clk; int iVar, i, nCands, nWords, w, clk;
Abc_Obj_t * pFanin; Abc_Obj_t * pFanin;
Hop_Obj_t * pFunc; Hop_Obj_t * pFunc;
assert( iFanin >= 0 ); assert( iFanin >= 0 );
// clean simulation info // clean simulation info
Vec_PtrCleanSimInfo( p->vDivCexes, 0, p->nDivWords ); Vec_PtrFillSimInfo( p->vDivCexes, 0, p->nDivWords );
pData = Vec_PtrEntry( p->vDivCexes, Vec_PtrSize(p->vDivs) );
memset( pData, 0xFF, sizeof(unsigned) * p->nDivWords );
p->nCexes = 0; p->nCexes = 0;
if ( fVeryVerbose ) if ( fVeryVerbose )
{ {
printf( "\n" ); printf( "\n" );
...@@ -143,7 +168,8 @@ int Abc_NtkMfsSolveSatResub( Mfs_Man_t * p, Abc_Obj_t * pNode, int iFanin, int f ...@@ -143,7 +168,8 @@ int Abc_NtkMfsSolveSatResub( Mfs_Man_t * p, Abc_Obj_t * pNode, int iFanin, int f
if ( fVeryVerbose ) if ( fVeryVerbose )
printf( "Node %d: Fanin %d can be removed.\n", pNode->Id, iFanin ); printf( "Node %d: Fanin %d can be removed.\n", pNode->Id, iFanin );
p->nNodesResub++; p->nNodesResub++;
// p->nNodesGained += Abc_NodeMffcLabel(pNode); if ( fSkipUpdate )
return 1;
clk = clock(); clk = clock();
// derive the function // derive the function
pFunc = Abc_NtkMfsInterplate( p, pCands, nCands ); pFunc = Abc_NtkMfsInterplate( p, pCands, nCands );
...@@ -156,11 +182,6 @@ p->timeInt += clock() - clk; ...@@ -156,11 +182,6 @@ p->timeInt += clock() - clk;
if ( fOnlyRemove ) if ( fOnlyRemove )
return 0; return 0;
// shift variables by 1
for ( i = Vec_PtrSize(p->vFanins); i > 0; i-- )
p->vFanins->pArray[i] = p->vFanins->pArray[i-1];
p->vFanins->nSize++;
if ( fVeryVerbose ) if ( fVeryVerbose )
{ {
for ( i = 0; i < 8; i++ ) for ( i = 0; i < 8; i++ )
...@@ -180,37 +201,52 @@ p->timeInt += clock() - clk; ...@@ -180,37 +201,52 @@ p->timeInt += clock() - clk;
if ( fVeryVerbose ) if ( fVeryVerbose )
{ {
printf( "%3d: %2d ", p->nCexes, iVar ); printf( "%3d: %2d ", p->nCexes, iVar );
pData = Vec_PtrEntry( p->vDivCexes, p->nCexes-1 );
// Extra_PrintBinary( stdout, pData, Vec_PtrSize(p->vDivs) );
for ( i = 0; i < Vec_PtrSize(p->vDivs); i++ ) for ( i = 0; i < Vec_PtrSize(p->vDivs); i++ )
printf( "%d", Aig_InfoHasBit(pData, i) ); {
pData = Vec_PtrEntry( p->vDivCexes, i );
printf( "%d", Aig_InfoHasBit(pData, p->nCexes-1) );
}
printf( "\n" ); printf( "\n" );
} }
// find the next divisor to try // find the next divisor to try
pData = Vec_PtrEntry( p->vDivCexes, Vec_PtrSize(p->vDivs) ); nWords = Aig_BitWordNum(p->nCexes);
assert( nWords <= p->nDivWords );
for ( iVar = 0; iVar < Vec_PtrSize(p->vDivs)-Abc_ObjFaninNum(pNode); iVar++ ) for ( iVar = 0; iVar < Vec_PtrSize(p->vDivs)-Abc_ObjFaninNum(pNode); iVar++ )
if ( Aig_InfoHasBit( pData, iVar ) ) {
pData = Vec_PtrEntry( p->vDivCexes, iVar );
for ( w = 0; w < nWords; w++ )
if ( pData[w] != ~0 )
break;
if ( w == nWords )
break; break;
}
if ( iVar == Vec_PtrSize(p->vDivs)-Abc_ObjFaninNum(pNode) ) if ( iVar == Vec_PtrSize(p->vDivs)-Abc_ObjFaninNum(pNode) )
return 0; return 0;
pCands[nCands] = toLitCond( Vec_IntEntry(p->vProjVars, iVar), 1 ); pCands[nCands] = toLitCond( Vec_IntEntry(p->vProjVars, iVar), 1 );
if ( Abc_NtkMfsTryResubOnce( p, pCands, nCands+1 ) ) if ( Abc_NtkMfsTryResubOnce( p, pCands, nCands+1 ) )
{ {
if ( fVeryVerbose ) if ( fVeryVerbose )
printf( "Node %d: Fanin %d can be replaced by divisor %d.\n", pNode->Id, iFanin, iVar ); printf( "Node %d: Fanin %d can be replaced by divisor %d.\n", pNode->Id, iFanin, iVar );
p->nNodesResub++; p->nNodesResub++;
// p->nNodesGained += Abc_NodeMffcLabel(pNode); if ( fSkipUpdate )
return 1;
clk = clock(); clk = clock();
// derive the function // derive the function
pFunc = Abc_NtkMfsInterplate( p, pCands, nCands+1 ); pFunc = Abc_NtkMfsInterplate( p, pCands, nCands+1 );
// update the network // shift fanins by 1
// Vec_PtrPush( p->vFanins, Vec_PtrEntry(p->vDivs, iVar) ); for ( i = Vec_PtrSize(p->vFanins); i > 0; i-- )
p->vFanins->pArray[i] = p->vFanins->pArray[i-1];
p->vFanins->nSize++;
Vec_PtrWriteEntry( p->vFanins, 0, Vec_PtrEntry(p->vDivs, iVar) ); Vec_PtrWriteEntry( p->vFanins, 0, Vec_PtrEntry(p->vDivs, iVar) );
// update the network
Abc_NtkMfsUpdateNetwork( p, pNode, p->vFanins, pFunc ); Abc_NtkMfsUpdateNetwork( p, pNode, p->vFanins, pFunc );
p->timeInt += clock() - clk; p->timeInt += clock() - clk;
return 1; return 1;
} }
if ( p->nCexes >= p->pPars->nDivMax )
break;
} }
return 0; return 0;
} }
...@@ -226,16 +262,155 @@ p->timeInt += clock() - clk; ...@@ -226,16 +262,155 @@ p->timeInt += clock() - clk;
SeeAlso [] SeeAlso []
***********************************************************************/ ***********************************************************************/
int Abc_NtkMfsResubArea( Mfs_Man_t * p, Abc_Obj_t * pNode ) int Abc_NtkMfsSolveSatResub2( Mfs_Man_t * p, Abc_Obj_t * pNode, int iFanin, int iFanin2 )
{ {
int fVeryVerbose = p->pPars->fVeryVerbose && Vec_PtrSize(p->vDivs) < 80;
unsigned * pData, * pData2;
int pCands[MFS_FANIN_MAX];
int iVar, iVar2, i, w, nCands, clk, nWords, fBreak;
Abc_Obj_t * pFanin; Abc_Obj_t * pFanin;
int i; Hop_Obj_t * pFunc;
assert( iFanin >= 0 );
assert( iFanin2 >= 0 || iFanin2 == -1 );
// clean simulation info
Vec_PtrFillSimInfo( p->vDivCexes, 0, p->nDivWords );
p->nCexes = 0;
if ( fVeryVerbose )
{
printf( "\n" );
printf( "Node %5d : Level = %2d. Divs = %3d. Fanins = %d/%d (out of %d). MFFC = %d\n",
pNode->Id, pNode->Level, Vec_PtrSize(p->vDivs)-Abc_ObjFaninNum(pNode),
iFanin, iFanin2, Abc_ObjFaninNum(pNode),
Abc_ObjFanoutNum(Abc_ObjFanin(pNode, iFanin)) == 1 ? Abc_NodeMffcLabel(Abc_ObjFanin(pNode, iFanin)) : 0 );
}
// try fanins without the critical fanin
nCands = 0;
Vec_PtrClear( p->vFanins );
Abc_ObjForEachFanin( pNode, pFanin, i ) Abc_ObjForEachFanin( pNode, pFanin, i )
if ( !Abc_ObjIsCi(pFanin) && Abc_ObjFanoutNum(pFanin) == 1 ) {
if ( i == iFanin || i == iFanin2 )
continue;
Vec_PtrPush( p->vFanins, pFanin );
iVar = Vec_PtrSize(p->vDivs) - Abc_ObjFaninNum(pNode) + i;
pCands[nCands++] = toLitCond( Vec_IntEntry( p->vProjVars, iVar ), 1 );
}
if ( Abc_NtkMfsTryResubOnce( p, pCands, nCands ) )
{
if ( fVeryVerbose )
printf( "Node %d: Fanins %d/%d can be removed.\n", pNode->Id, iFanin, iFanin2 );
p->nNodesResub++;
clk = clock();
// derive the function
pFunc = Abc_NtkMfsInterplate( p, pCands, nCands );
// update the network
Abc_NtkMfsUpdateNetwork( p, pNode, p->vFanins, pFunc );
p->timeInt += clock() - clk;
return 1;
}
if ( fVeryVerbose )
{
for ( i = 0; i < 11; i++ )
printf( " " );
for ( i = 0; i < Vec_PtrSize(p->vDivs)-Abc_ObjFaninNum(pNode); i++ )
printf( "%d", i % 10 );
for ( i = 0; i < Abc_ObjFaninNum(pNode); i++ )
if ( i == iFanin || i == iFanin2 )
printf( "*" );
else
printf( "%c", 'a' + i );
printf( "\n" );
}
iVar = iVar2 = -1;
while ( 1 )
{
if ( fVeryVerbose )
{ {
if ( Abc_NtkMfsSolveSatResub( p, pNode, i, 0 ) ) printf( "%3d: %2d %2d ", p->nCexes, iVar, iVar2 );
return 1; for ( i = 0; i < Vec_PtrSize(p->vDivs); i++ )
{
pData = Vec_PtrEntry( p->vDivCexes, i );
printf( "%d", Aig_InfoHasBit(pData, p->nCexes-1) );
}
printf( "\n" );
}
// find the next divisor to try
nWords = Aig_BitWordNum(p->nCexes);
assert( nWords <= p->nDivWords );
fBreak = 0;
for ( iVar = 1; iVar < Vec_PtrSize(p->vDivs)-Abc_ObjFaninNum(pNode); iVar++ )
{
pData = Vec_PtrEntry( p->vDivCexes, iVar );
for ( iVar2 = 0; iVar2 < iVar; iVar2++ )
{
pData2 = Vec_PtrEntry( p->vDivCexes, iVar2 );
for ( w = 0; w < nWords; w++ )
if ( (pData[w] | pData2[w]) != ~0 )
break;
if ( w == nWords )
{
fBreak = 1;
break;
}
}
if ( fBreak )
break;
}
if ( iVar == Vec_PtrSize(p->vDivs)-Abc_ObjFaninNum(pNode) )
return 0;
pCands[nCands] = toLitCond( Vec_IntEntry(p->vProjVars, iVar2), 1 );
pCands[nCands+1] = toLitCond( Vec_IntEntry(p->vProjVars, iVar), 1 );
if ( Abc_NtkMfsTryResubOnce( p, pCands, nCands+2 ) )
{
if ( fVeryVerbose )
printf( "Node %d: Fanins %d/%d can be replaced by divisors %d/%d.\n", pNode->Id, iFanin, iFanin2, iVar, iVar2 );
p->nNodesResub++;
clk = clock();
// derive the function
pFunc = Abc_NtkMfsInterplate( p, pCands, nCands+2 );
// shift fanins by 1
for ( i = Vec_PtrSize(p->vFanins); i > 0; i-- )
p->vFanins->pArray[i] = p->vFanins->pArray[i-1];
p->vFanins->nSize++;
// shift fanins by 1
for ( i = Vec_PtrSize(p->vFanins); i > 0; i-- )
p->vFanins->pArray[i] = p->vFanins->pArray[i-1];
p->vFanins->nSize++;
Vec_PtrWriteEntry( p->vFanins, 0, Vec_PtrEntry(p->vDivs, iVar2) );
Vec_PtrWriteEntry( p->vFanins, 1, Vec_PtrEntry(p->vDivs, iVar) );
// update the network
Abc_NtkMfsUpdateNetwork( p, pNode, p->vFanins, pFunc );
p->timeInt += clock() - clk;
return 1;
} }
if ( p->nCexes >= p->pPars->nDivMax )
break;
}
return 0;
}
/**Function*************************************************************
Synopsis [Evaluates the possibility of replacing given edge by another edge.]
Description []
SideEffects []
SeeAlso []
***********************************************************************/
int Abc_NtkMfsEdgeSwapEval( Mfs_Man_t * p, Abc_Obj_t * pNode )
{
Abc_Obj_t * pFanin;
int i;
Abc_ObjForEachFanin( pNode, pFanin, i )
Abc_NtkMfsSolveSatResub( p, pNode, i, 0, 1 );
return 0; return 0;
} }
...@@ -250,25 +425,81 @@ int Abc_NtkMfsResubArea( Mfs_Man_t * p, Abc_Obj_t * pNode ) ...@@ -250,25 +425,81 @@ int Abc_NtkMfsResubArea( Mfs_Man_t * p, Abc_Obj_t * pNode )
SeeAlso [] SeeAlso []
***********************************************************************/ ***********************************************************************/
int Abc_NtkMfsResubEdge( Mfs_Man_t * p, Abc_Obj_t * pNode ) int Abc_NtkMfsResubNode( Mfs_Man_t * p, Abc_Obj_t * pNode )
{ {
Abc_Obj_t * pFanin; Abc_Obj_t * pFanin;
int i; int i;
// try replacing area critical fanins
Abc_ObjForEachFanin( pNode, pFanin, i ) Abc_ObjForEachFanin( pNode, pFanin, i )
if ( !Abc_ObjIsCi(pFanin) && Abc_ObjFanoutNum(pFanin) == 1 ) if ( !Abc_ObjIsCi(pFanin) && Abc_ObjFanoutNum(pFanin) == 1 )
{ {
if ( Abc_NtkMfsSolveSatResub( p, pNode, i, 0 ) ) if ( Abc_NtkMfsSolveSatResub( p, pNode, i, 0, 0 ) )
return 1; return 1;
} }
// try removing redundant edges
if ( !p->pPars->fArea )
{
Abc_ObjForEachFanin( pNode, pFanin, i )
if ( Abc_ObjIsCi(pFanin) || Abc_ObjFanoutNum(pFanin) != 1 )
{
if ( Abc_NtkMfsSolveSatResub( p, pNode, i, 1, 0 ) )
return 1;
}
}
if ( Abc_ObjFaninNum(pNode) == p->nFaninMax )
return 0;
// try replacing area critical fanins while adding two new fanins
Abc_ObjForEachFanin( pNode, pFanin, i ) Abc_ObjForEachFanin( pNode, pFanin, i )
if ( !Abc_ObjIsCi(pFanin) && Abc_ObjFanoutNum(pFanin) != 1 ) if ( !Abc_ObjIsCi(pFanin) && Abc_ObjFanoutNum(pFanin) == 1 )
{ {
if ( Abc_NtkMfsSolveSatResub( p, pNode, i, 1 ) ) if ( Abc_NtkMfsSolveSatResub2( p, pNode, i, -1 ) )
return 1; return 1;
} }
return 0; return 0;
} }
/**Function*************************************************************
Synopsis [Performs resubstitution for the node.]
Description []
SideEffects []
SeeAlso []
***********************************************************************/
int Abc_NtkMfsResubNode2( Mfs_Man_t * p, Abc_Obj_t * pNode )
{
Abc_Obj_t * pFanin, * pFanin2;
int i, k;
/*
Abc_ObjForEachFanin( pNode, pFanin, i )
if ( !Abc_ObjIsCi(pFanin) && Abc_ObjFanoutNum(pFanin) == 1 )
{
if ( Abc_NtkMfsSolveSatResub( p, pNode, i, 0, 0 ) )
return 1;
}
*/
if ( Abc_ObjFaninNum(pNode) < 2 )
return 0;
// try replacing one area critical fanin and one other fanin while adding two new fanins
Abc_ObjForEachFanin( pNode, pFanin, i )
{
if ( !Abc_ObjIsCi(pFanin) && Abc_ObjFanoutNum(pFanin) == 1 )
{
// consider second fanin to remove at the same time
Abc_ObjForEachFanin( pNode, pFanin2, k )
{
if ( i != k && Abc_NtkMfsSolveSatResub2( p, pNode, i, k ) )
return 1;
}
}
}
return 0;
}
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
/// END OF FILE /// /// END OF FILE ///
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
......
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