From e5fb4fe55000fe5256420975ddbe5de79095f3be Mon Sep 17 00:00:00 2001 From: Alan Mishchenko Date: Thu, 3 Feb 2011 22:11:47 -0800 Subject: Added writing signal names in AIGER writer for GIA package. --- src/aig/gia/giaAiger.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'src/aig') diff --git a/src/aig/gia/giaAiger.c b/src/aig/gia/giaAiger.c index e201cbb9..07b81a86 100644 --- a/src/aig/gia/giaAiger.c +++ b/src/aig/gia/giaAiger.c @@ -887,6 +887,22 @@ void Gia_WriteAiger( Gia_Man_t * pInit, char * pFileName, int fWriteSymbols, int fwrite( pBuffer, 1, Pos, pFile ); ABC_FREE( pBuffer ); + // write the symbol table + if ( p->vNamesIn && p->vNamesOut ) + { + assert( Vec_PtrSize(p->vNamesIn) == Gia_ManCiNum(p) ); + assert( Vec_PtrSize(p->vNamesOut) == Gia_ManCoNum(p) ); + // write PIs + Gia_ManForEachPi( p, pObj, i ) + fprintf( pFile, "i%d %s\n", i, Vec_PtrEntry(p->vNamesIn, i) ); + // write latches + Gia_ManForEachRo( p, pObj, i ) + fprintf( pFile, "l%d %s\n", i, Vec_PtrEntry(p->vNamesIn, Gia_ManPiNum(p) + i) ); + // write POs + Gia_ManForEachPo( p, pObj, i ) + fprintf( pFile, "o%d %s\n", i, Vec_PtrEntry(p->vNamesOut, i) ); + } + // write the comment fprintf( pFile, "c" ); // write equivalences -- cgit v1.2.3