Commit 93b96fc3 by Alan Mishchenko

An improvement to 'twoexact' and 'lutexact'.

parent c6b962ef
...@@ -37,6 +37,7 @@ ABC_NAMESPACE_HEADER_START ...@@ -37,6 +37,7 @@ ABC_NAMESPACE_HEADER_START
//#define USE_NODE_ORDER 1 //#define USE_NODE_ORDER 1
//#define USE_FIRST_SPECIAL 1 //#define USE_FIRST_SPECIAL 1
//#define USE_LESS_VARS 1
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
/// BASIC TYPES /// /// BASIC TYPES ///
......
...@@ -447,7 +447,11 @@ int Exa_ManMarkup( Exa_Man_t * p ) ...@@ -447,7 +447,11 @@ int Exa_ManMarkup( Exa_Man_t * p )
continue; continue;
} }
#endif #endif
#ifdef USE_LESS_VARS
for ( j = 1 - k; j < i - k; j++ ) for ( j = 1 - k; j < i - k; j++ )
#else
for ( j = 0; j < i - k; j++ )
#endif
{ {
Vec_WecPush( p->vOutLits, j, Abc_Var2Lit(p->iVar, 0) ); Vec_WecPush( p->vOutLits, j, Abc_Var2Lit(p->iVar, 0) );
p->VarMarks[i][k][j] = p->iVar++; p->VarMarks[i][k][j] = p->iVar++;
...@@ -828,7 +832,11 @@ static int Exa3_ManMarkup( Exa3_Man_t * p ) ...@@ -828,7 +832,11 @@ static int Exa3_ManMarkup( Exa3_Man_t * p )
continue; continue;
} }
#endif #endif
#ifdef USE_LESS_VARS
for ( j = p->nLutSize - 1 - k; j < i - k; j++ ) for ( j = p->nLutSize - 1 - k; j < i - k; j++ )
#else
for ( j = 0; j < i - k; j++ )
#endif
{ {
Vec_WecPush( p->vOutLits, j, Abc_Var2Lit(p->iVar, 0) ); Vec_WecPush( p->vOutLits, j, Abc_Var2Lit(p->iVar, 0) );
p->VarMarks[i][k][j] = p->iVar++; p->VarMarks[i][k][j] = p->iVar++;
......
...@@ -553,7 +553,11 @@ static int Exa_ManMarkup( Exa_Man_t * p ) ...@@ -553,7 +553,11 @@ static int Exa_ManMarkup( Exa_Man_t * p )
continue; continue;
} }
#endif #endif
#ifdef USE_LESS_VARS
for ( j = 1 - k; j < i - k; j++ ) for ( j = 1 - k; j < i - k; j++ )
#else
for ( j = 0; j < i - k; j++ )
#endif
{ {
Vec_WecPush( p->vOutLits, j, Abc_Var2Lit(p->iVar, 0) ); Vec_WecPush( p->vOutLits, j, Abc_Var2Lit(p->iVar, 0) );
p->VarMarks[i][k][j] = p->iVar++; p->VarMarks[i][k][j] = p->iVar++;
...@@ -936,7 +940,11 @@ static int Exa3_ManMarkup( Exa3_Man_t * p ) ...@@ -936,7 +940,11 @@ static int Exa3_ManMarkup( Exa3_Man_t * p )
continue; continue;
} }
#endif #endif
#ifdef USE_LESS_VARS
for ( j = p->nLutSize - 1 - k; j < i - k; j++ ) for ( j = p->nLutSize - 1 - k; j < i - k; j++ )
#else
for ( j = 0; j < i - k; j++ )
#endif
{ {
Vec_WecPush( p->vOutLits, j, Abc_Var2Lit(p->iVar, 0) ); Vec_WecPush( p->vOutLits, j, Abc_Var2Lit(p->iVar, 0) );
p->VarMarks[i][k][j] = p->iVar++; p->VarMarks[i][k][j] = p->iVar++;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment