Removing assertion when decomposing into LUTs smaller than 6

This commit is contained in:
aletempiac 2024-04-10 18:42:52 +02:00
parent 8f3447800c
commit 6b5ebb3e76
3 changed files with 1249 additions and 3 deletions

View File

@ -1369,7 +1369,7 @@ private:
std::swap( var_index1, var_index2 );
}
const uint32_t num_blocks = 1 << ( num_vars - 6 );
const uint32_t num_blocks = num_vars <= 6 ? 1 : 1 << ( num_vars - 6 );
if ( num_vars <= 6 )
{

View File

@ -35,8 +35,8 @@ ABC_NAMESPACE_HEADER_START
int acd_evaluate( word * pTruth, unsigned nVars, int lutSize, unsigned *pdelay, unsigned *cost, int try_no_late_arrival );
int acd_decompose( word * pTruth, unsigned nVars, int lutSize, unsigned *pdelay, unsigned char *decomposition );
int acd66_evaluate( word * pTruth, unsigned nVars, int compute_decomposition );
int acd66_decompose( word * pTruth, unsigned nVars, unsigned char *decomposition );
int acdXX_evaluate( word * pTruth, unsigned lutSize, unsigned nVars, int compute_decomposition );
int acdXX_decompose( word * pTruth, unsigned lutSize, unsigned nVars, unsigned char *decomposition );
int acd666_evaluate( word * pTruth, unsigned nVars, int compute_decomposition );

1246
src/map/if/acd/acdXX.hpp Normal file

File diff suppressed because it is too large Load Diff