diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2012-11-28 16:18:39 -0800 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2012-11-28 16:18:39 -0800 |
commit | 661265984c6b9e32fcaece8aa361b06476756783 (patch) | |
tree | c766135e7705cc3d3a9e8d8fcded64eed5225dec /src/misc/util | |
parent | b2fd119933166ad7d9e4132ebb8aaf422bfcdb8a (diff) | |
download | abc-661265984c6b9e32fcaece8aa361b06476756783.tar.gz abc-661265984c6b9e32fcaece8aa361b06476756783.tar.bz2 abc-661265984c6b9e32fcaece8aa361b06476756783.zip |
Counter-example analysis and optimization.
Diffstat (limited to 'src/misc/util')
-rw-r--r-- | src/misc/util/utilCex.c | 11 | ||||
-rw-r--r-- | src/misc/util/utilCex.h | 1 |
2 files changed, 12 insertions, 0 deletions
diff --git a/src/misc/util/utilCex.c b/src/misc/util/utilCex.c index 01afd489..1bdf1276 100644 --- a/src/misc/util/utilCex.c +++ b/src/misc/util/utilCex.c @@ -59,6 +59,17 @@ Abc_Cex_t * Abc_CexAlloc( int nRegs, int nRealPis, int nFrames ) pCex->nBits = nRegs + nRealPis * nFrames; return pCex; } +Abc_Cex_t * Abc_CexAllocFull( int nRegs, int nRealPis, int nFrames ) +{ + Abc_Cex_t * pCex; + int nWords = Abc_BitWordNum( nRegs + nRealPis * nFrames ); + pCex = (Abc_Cex_t *)ABC_ALLOC( char, sizeof(Abc_Cex_t) + sizeof(unsigned) * nWords ); + memset( pCex, 0xFF, sizeof(Abc_Cex_t) + sizeof(unsigned) * nWords ); + pCex->nRegs = nRegs; + pCex->nPis = nRealPis; + pCex->nBits = nRegs + nRealPis * nFrames; + return pCex; +} /**Function************************************************************* diff --git a/src/misc/util/utilCex.h b/src/misc/util/utilCex.h index 1fd06f96..646a2592 100644 --- a/src/misc/util/utilCex.h +++ b/src/misc/util/utilCex.h @@ -57,6 +57,7 @@ struct Abc_Cex_t_ /*=== utilCex.c ===========================================================*/ extern Abc_Cex_t * Abc_CexAlloc( int nRegs, int nTruePis, int nFrames ); +extern Abc_Cex_t * Abc_CexAllocFull( int nRegs, int nTruePis, int nFrames ); extern Abc_Cex_t * Abc_CexMakeTriv( int nRegs, int nTruePis, int nTruePos, int iFrameOut ); extern Abc_Cex_t * Abc_CexCreate( int nRegs, int nTruePis, int * pArray, int iFrame, int iPo, int fSkipRegs ); extern Abc_Cex_t * Abc_CexDup( Abc_Cex_t * p, int nRegsNew ); |