From 723f85ef1b4ad35bc7708f7b8208dafe0406078c Mon Sep 17 00:00:00 2001 From: Alan Mishchenko Date: Wed, 19 Sep 2012 20:21:27 -0700 Subject: Extending Liberty parser to handle multi-output cells. --- src/map/mio/mioParse.c | 8 ++++---- src/map/mio/mioRead.c | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) (limited to 'src/map/mio') diff --git a/src/map/mio/mioParse.c b/src/map/mio/mioParse.c index a3dfa435..21348498 100644 --- a/src/map/mio/mioParse.c +++ b/src/map/mio/mioParse.c @@ -410,7 +410,7 @@ int Mio_ParseCheckFormula( Mio_Gate_t * pGate, char * pForm ) Mio_Pin_t * pPin; char * pStr; int i, iPin, fVisit[32] = {0}; - if ( Mio_GateReadPins(pGate) == NULL ) + if ( Mio_GateReadPins(pGate) == NULL || !strcmp(Mio_PinReadName(Mio_GateReadPins(pGate)), "*") ) return 1; /* // find the equality sign @@ -421,9 +421,9 @@ int Mio_ParseCheckFormula( Mio_Gate_t * pGate, char * pForm ) return 0; } */ -printf( "Checking gate %s\n", pGate->pName ); +//printf( "Checking gate %s\n", pGate->pName ); - for ( pStr = pForm + 1; *pStr; pStr++ ) + for ( pStr = pForm; *pStr; pStr++ ) { if ( *pStr == ' ' || *pStr == MIO_EQN_SYM_OPEN || @@ -443,7 +443,7 @@ printf( "Checking gate %s\n", pGate->pName ); iPin = Mio_ParseCheckName( pGate, &pStr ); if ( iPin == -1 ) { - printf( "Skipping gate \"%s\" because substring \"%s\" does not match with a pin name.\n", pGate->pName, *pStr ); + printf( "Skipping gate \"%s\" because substring \"%s\" does not match with a pin name.\n", pGate->pName, pStr ); return 0; } assert( iPin < 32 ); diff --git a/src/map/mio/mioRead.c b/src/map/mio/mioRead.c index 2d1a747f..9a46ac8a 100644 --- a/src/map/mio/mioRead.c +++ b/src/map/mio/mioRead.c @@ -209,14 +209,14 @@ int Mio_LibraryReadInternal( Mio_Library_t * pLib, char * pBuffer, int fExtended pGate = Mio_LibraryReadGate( &pToken, fExtendedFormat ); if ( pGate == NULL ) return 1; -/* + // skip the gate if its formula has problems if ( !Mio_ParseCheckFormula(pGate, pGate->pForm) ) { Mio_GateDelete( pGate ); continue; } -*/ + // set the library pGate->pLib = pLib; -- cgit v1.2.3