Skip to content

Commit 5532997

Browse files
authored
Merge pull request #4 from QuantamHD/master_update
Move to latest upstream
2 parents d3916ac + 3e61577 commit 5532997

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

76 files changed

+6408
-349
lines changed

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,7 @@ ifdef ABC_USE_LIBSTDCXX
152152
endif
153153

154154
$(info $(MSG_PREFIX)Using CFLAGS=$(CFLAGS))
155-
CXXFLAGS += $(CFLAGS) -std=c++17
155+
CXXFLAGS += $(CFLAGS) -std=c++11
156156

157157
SRC :=
158158
GARBAGE := core core.* *.stackdump ./tags $(PROG) arch_flags

abclib.dsp

Lines changed: 12 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/aig/gia/gia.h

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1253,6 +1253,7 @@ extern int Gia_FileSize( char * pFileName );
12531253
extern Gia_Man_t * Gia_AigerReadFromMemory( char * pContents, int nFileSize, int fGiaSimple, int fSkipStrash, int fCheck );
12541254
extern Gia_Man_t * Gia_AigerRead( char * pFileName, int fGiaSimple, int fSkipStrash, int fCheck );
12551255
extern void Gia_AigerWrite( Gia_Man_t * p, char * pFileName, int fWriteSymbols, int fCompact, int fWriteNewLine );
1256+
extern void Gia_AigerWriteS( Gia_Man_t * p, char * pFileName, int fWriteSymbols, int fCompact, int fWriteNewLine, int fSkipComment );
12561257
extern void Gia_DumpAiger( Gia_Man_t * p, char * pFilePrefix, int iFileNum, int nFileNumDigits );
12571258
extern Vec_Str_t * Gia_AigerWriteIntoMemoryStr( Gia_Man_t * p );
12581259
extern Vec_Str_t * Gia_AigerWriteIntoMemoryStrPart( Gia_Man_t * p, Vec_Int_t * vCis, Vec_Int_t * vAnds, Vec_Int_t * vCos, int nRegs );
@@ -1530,6 +1531,7 @@ extern void Gia_ManSetRegNum( Gia_Man_t * p, int nRegs );
15301531
extern void Gia_ManReportImprovement( Gia_Man_t * p, Gia_Man_t * pNew );
15311532
extern void Gia_ManPrintNpnClasses( Gia_Man_t * p );
15321533
extern void Gia_ManDumpVerilog( Gia_Man_t * p, char * pFileName, Vec_Int_t * vObjs, int fVerBufs, int fInter, int fInterComb, int fAssign, int fReverse );
1534+
extern void Gia_ManDumpVerilogNand( Gia_Man_t * p, char * pFileName );
15331535
/*=== giaMem.c ===========================================================*/
15341536
extern Gia_MmFixed_t * Gia_MmFixedStart( int nEntrySize, int nEntriesMax );
15351537
extern void Gia_MmFixedStop( Gia_MmFixed_t * p, int fVerbose );
@@ -1787,6 +1789,39 @@ extern void Tas_ManSatPrintStats( Tas_Man_t * p );
17871789
extern int Tas_ManSolve( Tas_Man_t * p, Gia_Obj_t * pObj, Gia_Obj_t * pObj2 );
17881790
extern int Tas_ManSolveArray( Tas_Man_t * p, Vec_Ptr_t * vObjs );
17891791

1792+
/*=== giaBound.c ===========================================================*/
1793+
typedef struct Bnd_Man_t_ Bnd_Man_t;
1794+
1795+
extern Bnd_Man_t* Bnd_ManStart( Gia_Man_t *pSpec, Gia_Man_t *pImpl, int fVerbose );
1796+
extern void Bnd_ManStop();
1797+
1798+
// getter
1799+
extern int Bnd_ManGetNInternal();
1800+
extern int Bnd_ManGetNExtra();
1801+
1802+
//for fraig
1803+
extern void Bnd_ManMap( int iLit, int id, int spec );
1804+
extern void Bnd_ManMerge( int id1, int id2, int phaseDiff );
1805+
extern void Bnd_ManFinalizeMappings();
1806+
extern void Bnd_ManPrintMappings();
1807+
extern Gia_Man_t* Bnd_ManStackGias( Gia_Man_t *pSpec, Gia_Man_t *pImpl );
1808+
extern int Bnd_ManCheckCoMerged( Gia_Man_t *p );
1809+
1810+
// for eco
1811+
extern int Bnd_ManCheckBound( Gia_Man_t *p, int fVerbose );
1812+
extern void Bnd_ManFindBound( Gia_Man_t *p, Gia_Man_t *pImpl );
1813+
extern Gia_Man_t* Bnd_ManGenSpecOut( Gia_Man_t *p );
1814+
extern Gia_Man_t* Bnd_ManGenImplOut( Gia_Man_t *p );
1815+
extern Gia_Man_t* Bnd_ManGenPatched( Gia_Man_t *pOut, Gia_Man_t *pSpec, Gia_Man_t *pPatch );
1816+
extern Gia_Man_t* Bnd_ManGenPatched1( Gia_Man_t *pOut, Gia_Man_t *pSpec );
1817+
extern Gia_Man_t* Bnd_ManGenPatched2( Gia_Man_t *pImpl, Gia_Man_t *pPatch, int fSkiptStrash, int fVerbose );
1818+
extern void Bnd_ManSetEqOut( int eq );
1819+
extern void Bnd_ManSetEqRes( int eq );
1820+
extern void Bnd_ManPrintStats();
1821+
1822+
// util
1823+
extern Gia_Man_t* Bnd_ManCutBoundary( Gia_Man_t *p, Vec_Int_t* vEI, Vec_Int_t* vEO, Vec_Bit_t* vEI_phase, Vec_Bit_t* vEO_phase );
1824+
17901825
ABC_NAMESPACE_HEADER_END
17911826

17921827

src/aig/gia/giaAiger.c

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1217,7 +1217,7 @@ Vec_Str_t * Gia_AigerWriteIntoMemoryStrPart( Gia_Man_t * p, Vec_Int_t * vCis, Ve
12171217
SeeAlso []
12181218
12191219
***********************************************************************/
1220-
void Gia_AigerWrite( Gia_Man_t * pInit, char * pFileName, int fWriteSymbols, int fCompact, int fWriteNewLine )
1220+
void Gia_AigerWriteS( Gia_Man_t * pInit, char * pFileName, int fWriteSymbols, int fCompact, int fWriteNewLine, int fSkipComment )
12211221
{
12221222
int fVerbose = XAIG_VERBOSE;
12231223
FILE * pFile;
@@ -1557,8 +1557,10 @@ void Gia_AigerWrite( Gia_Man_t * pInit, char * pFileName, int fWriteSymbols, int
15571557
// write comments
15581558
if ( fWriteNewLine )
15591559
fprintf( pFile, "c\n" );
1560-
fprintf( pFile, "\nThis file was produced by the GIA package in ABC on %s\n", Gia_TimeStamp() );
1561-
fprintf( pFile, "For information about AIGER format, refer to %s\n", "http://fmv.jku.at/aiger" );
1560+
if ( !fSkipComment ) {
1561+
fprintf( pFile, "\nThis file was produced by the GIA package in ABC on %s\n", Gia_TimeStamp() );
1562+
fprintf( pFile, "For information about AIGER format, refer to %s\n", "http://fmv.jku.at/aiger" );
1563+
}
15621564
fclose( pFile );
15631565
if ( p != pInit )
15641566
{
@@ -1567,6 +1569,22 @@ void Gia_AigerWrite( Gia_Man_t * pInit, char * pFileName, int fWriteSymbols, int
15671569
}
15681570
}
15691571

1572+
/**Function*************************************************************
1573+
1574+
Synopsis [Writes the AIG in the binary AIGER format.]
1575+
1576+
Description []
1577+
1578+
SideEffects []
1579+
1580+
SeeAlso []
1581+
1582+
***********************************************************************/
1583+
void Gia_AigerWrite( Gia_Man_t * pInit, char * pFileName, int fWriteSymbols, int fCompact, int fWriteNewLine )
1584+
{
1585+
Gia_AigerWriteS( pInit, pFileName, fWriteSymbols, fCompact, fWriteNewLine, 0 );
1586+
}
1587+
15701588
/**Function*************************************************************
15711589
15721590
Synopsis [Writes the AIG in the binary AIGER format.]

0 commit comments

Comments
 (0)