Added writing signal names in AIGER writer for GIA package.

This commit is contained in:
Alan Mishchenko 2011-02-03 22:11:47 -08:00
parent e6f8744777
commit e5fb4fe550
1 changed files with 16 additions and 0 deletions

View File

@ -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