summaryrefslogtreecommitdiffstats
path: root/src/base/wlc/wlcReadVer.c
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2015-07-16 17:37:48 -0700
committerAlan Mishchenko <alanmi@berkeley.edu>2015-07-16 17:37:48 -0700
commitd332e670a28bcf2fc21e407b340aa6f3900d0f31 (patch)
tree5795c8df71a125b8a804f29071fae9ebeaa80ea1 /src/base/wlc/wlcReadVer.c
parent0aab93566abad05443c27e4f992712af4ffa6968 (diff)
downloadabc-d332e670a28bcf2fc21e407b340aa6f3900d0f31.tar.gz
abc-d332e670a28bcf2fc21e407b340aa6f3900d0f31.tar.bz2
abc-d332e670a28bcf2fc21e407b340aa6f3900d0f31.zip
Improving Wlc_Ntk_t data-structure by extending bit-ranges up to 4B enabling printout of AND2 in '%ps -d'.
Diffstat (limited to 'src/base/wlc/wlcReadVer.c')
-rw-r--r--src/base/wlc/wlcReadVer.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/base/wlc/wlcReadVer.c b/src/base/wlc/wlcReadVer.c
index 562940f7..72844917 100644
--- a/src/base/wlc/wlcReadVer.c
+++ b/src/base/wlc/wlcReadVer.c
@@ -43,6 +43,10 @@ struct Wlc_Prs_t_
Mem_Flex_t * pMemTable;
Vec_Ptr_t * vTables;
int nConsts;
+ int nNonZeroCount;
+ int nNonZeroEnd;
+ int nNonZeroBeg;
+ int nNonZeroLine;
char sError[WLV_PRS_MAX_LINE];
};
@@ -809,7 +813,14 @@ int Wlc_PrsReadDeclaration( Wlc_Prs_t * p, char * pStart )
if ( pStart == NULL )
return Wlc_PrsWriteErrorMessage( p, pStart, "Cannot read range." );
if ( Beg != 0 )
- printf( "Warning: Non-zero-based range ([%d:%d]) in line %d.\n", End, Beg, Wlc_PrsFindLine(p, pStart) );
+ {
+ if ( p->nNonZeroCount++ == 0 )
+ {
+ p->nNonZeroEnd = End;
+ p->nNonZeroBeg = Beg;
+ p->nNonZeroLine = Wlc_PrsFindLine(p, pStart);
+ }
+ }
while ( 1 )
{
char * pName;
@@ -1156,6 +1167,11 @@ startword:
return Wlc_PrsWriteErrorMessage( p, pStart, "Cannot read line beginning with %s.", pName );
}
}
+ if ( p->nNonZeroCount )
+ {
+ printf( "Warning: %d objects in the input file have non-zero-based ranges.\n", p->nNonZeroCount );
+ printf( "In particular, a signal with range [%d:%d] is declared in line %d.\n", p->nNonZeroEnd, p->nNonZeroBeg, p->nNonZeroLine );
+ }
return 1;
}
Wlc_Ntk_t * Wlc_ReadVer( char * pFileName )