From 42cebe99d09df1b6ac2f58bdfa1f6e47cb4bc4d2 Mon Sep 17 00:00:00 2001 From: Alan Mishchenko Date: Mon, 29 Nov 2010 01:35:09 -0800 Subject: Bug fix: unhandled & symbol in Liberty formula representation --- src/map/mio/mioFunc.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'src/map/mio') diff --git a/src/map/mio/mioFunc.c b/src/map/mio/mioFunc.c index f6f327e3..e58d3958 100644 --- a/src/map/mio/mioFunc.c +++ b/src/map/mio/mioFunc.c @@ -28,7 +28,8 @@ ABC_NAMESPACE_IMPL_START // these symbols (and no other) can appear in the formulas #define MIO_SYMB_AND '*' -#define MIO_SYMB_OR1 '+' +#define MIO_SYMB_AND2 '&' +#define MIO_SYMB_OR '+' #define MIO_SYMB_OR2 '|' #define MIO_SYMB_XOR '^' #define MIO_SYMB_NOT '!' @@ -246,10 +247,12 @@ int Mio_GateCollectNames( char * pFormula, char * pPinNames[] ) // remove the non-name symbols for ( pTemp = Buffer; *pTemp; pTemp++ ) - if ( *pTemp == MIO_SYMB_AND || *pTemp == MIO_SYMB_OR1 || *pTemp == MIO_SYMB_OR2 - || *pTemp == MIO_SYMB_XOR || *pTemp == MIO_SYMB_NOT || *pTemp == MIO_SYMB_OPEN - || *pTemp == MIO_SYMB_CLOSE || *pTemp == MIO_SYMB_AFTNOT ) - *pTemp = ' '; + if ( *pTemp == MIO_SYMB_AND || *pTemp == MIO_SYMB_AND2 || + *pTemp == MIO_SYMB_OR || *pTemp == MIO_SYMB_OR2 || + *pTemp == MIO_SYMB_XOR || + *pTemp == MIO_SYMB_NOT || *pTemp == MIO_SYMB_AFTNOT || + *pTemp == MIO_SYMB_OPEN || *pTemp == MIO_SYMB_CLOSE ) + *pTemp = ' '; // save the names nPins = 0; -- cgit v1.2.3