summaryrefslogtreecommitdiffstats
path: root/src/map/mio
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2012-10-01 11:44:14 -0700
committerAlan Mishchenko <alanmi@berkeley.edu>2012-10-01 11:44:14 -0700
commit73ab6aac1fad7cf7a4f15bccafff1eabebf8cce6 (patch)
tree9f68741dad9c785a0c2ea2336c7358e87ded5d77 /src/map/mio
parenta595fa85ef1d324448e171651881b0b896c69098 (diff)
downloadabc-73ab6aac1fad7cf7a4f15bccafff1eabebf8cce6.tar.gz
abc-73ab6aac1fad7cf7a4f15bccafff1eabebf8cce6.tar.bz2
abc-73ab6aac1fad7cf7a4f15bccafff1eabebf8cce6.zip
Changes several defaults of 'super' to be infinite.
Diffstat (limited to 'src/map/mio')
-rw-r--r--src/map/mio/mio.c12
-rw-r--r--src/map/mio/mioRead.c9
-rw-r--r--src/map/mio/mioUtils.c2
3 files changed, 11 insertions, 12 deletions
diff --git a/src/map/mio/mio.c b/src/map/mio/mio.c
index 14878f94..b5153f1c 100644
--- a/src/map/mio/mio.c
+++ b/src/map/mio/mio.c
@@ -250,6 +250,7 @@ int Mio_CommandReadGenlib( Abc_Frame_t * pAbc, int argc, char **argv )
FILE * pFile;
FILE * pOut, * pErr;
Mio_Library_t * pLib;
+ Amap_Lib_t * pLib2;
Abc_Ntk_t * pNet;
char * pFileName;
char * pExcludeFile = NULL;
@@ -323,6 +324,9 @@ int Mio_CommandReadGenlib( Abc_Frame_t * pAbc, int argc, char **argv )
fprintf( pErr, "Reading genlib library has failed.\n" );
return 1;
}
+ if ( fVerbose )
+ printf( "Entered genlib library with %d gates from file \"%s\".\n", Mio_LibraryReadGateNum(pLib), pFileName );
+
// add the fixed number (wire delay) to all delays in the library
if ( WireDelay != 0.0 )
Mio_LibraryShiftDelay( pLib, WireDelay );
@@ -339,17 +343,15 @@ int Mio_CommandReadGenlib( Abc_Frame_t * pAbc, int argc, char **argv )
Abc_FrameSetLibGen( pLib );
// set the new network
- pLib = (Mio_Library_t *)Amap_LibReadAndPrepare( pFileName, NULL, 0, 0 );
- if ( pLib == NULL )
+ pLib2 = Amap_LibReadAndPrepare( pFileName, NULL, 0, 0 );
+ if ( pLib2 == NULL )
{
fprintf( pErr, "Reading genlib library has failed.\n" );
return 1;
}
// replace the current library
Amap_LibFree( (Amap_Lib_t *)Abc_FrameReadLibGen2() );
- Abc_FrameSetLibGen2( pLib );
- if ( fVerbose )
- printf( "Entered genlib library with %d gates from file \"%s\".\n", Mio_LibraryReadGateNum(pLib), pFileName );
+ Abc_FrameSetLibGen2( pLib2 );
return 0;
usage:
diff --git a/src/map/mio/mioRead.c b/src/map/mio/mioRead.c
index 05148776..ca913380 100644
--- a/src/map/mio/mioRead.c
+++ b/src/map/mio/mioRead.c
@@ -154,8 +154,7 @@ Mio_Library_t * Mio_LibraryReadBuffer( char * pBuffer, int fExtendedFormat, st__
Mio_Library_t * pLib;
// allocate the genlib structure
- pLib = ABC_ALLOC( Mio_Library_t, 1 );
- memset( pLib, 0, sizeof(Mio_Library_t) );
+ pLib = ABC_CALLOC( Mio_Library_t, 1 );
pLib->tName2Gate = st__init_table(strcmp, st__strhash);
pLib->pMmFlex = Mem_FlexStart();
pLib->vCube = Vec_StrAlloc( 100 );
@@ -337,8 +336,7 @@ Mio_Gate_t * Mio_LibraryReadGate( char ** ppToken, int fExtendedFormat )
char * pToken = *ppToken;
// allocate the gate structure
- pGate = ABC_ALLOC( Mio_Gate_t, 1 );
- memset( pGate, 0, sizeof(Mio_Gate_t) );
+ pGate = ABC_CALLOC( Mio_Gate_t, 1 );
// read the name
pToken = strtok( NULL, " \t\r\n" );
@@ -405,8 +403,7 @@ Mio_Pin_t * Mio_LibraryReadPin( char ** ppToken, int fExtendedFormat )
char * pToken = *ppToken;
// allocate the gate structure
- pPin = ABC_ALLOC( Mio_Pin_t, 1 );
- memset( pPin, 0, sizeof(Mio_Pin_t) );
+ pPin = ABC_CALLOC( Mio_Pin_t, 1 );
// read the name
pToken = strtok( NULL, " \t\r\n" );
diff --git a/src/map/mio/mioUtils.c b/src/map/mio/mioUtils.c
index d481bf81..a67153a5 100644
--- a/src/map/mio/mioUtils.c
+++ b/src/map/mio/mioUtils.c
@@ -311,7 +311,7 @@ Mio_Gate_t ** Mio_CollectRoots( Mio_Library_t * pLib, int nInputs, float tDelay,
{
if ( pGate->nInputs > nInputs )
continue;
- if ( pGate->dDelayMax > (double)tDelay )
+ if ( tDelay > 0.0 && pGate->dDelayMax > (double)tDelay )
continue;
if ( pGate->uTruth == 0 || pGate->uTruth == ~0 )
continue;