Add option for lut optimisation

This commit is contained in:
Franz Reichl 2026-05-21 11:58:13 +02:00
parent f4d870e109
commit 70c42b7292
3 changed files with 6 additions and 7 deletions

View File

@ -61036,7 +61036,7 @@ int Abc_CommandAbc9elSLIM( Abc_Frame_t * pAbc, int argc, char ** argv ) {
seteSLIMParams(&params);
Extra_UtilGetoptReset();
params.subcircuit_max_size = 4;
while ( ( c = Extra_UtilGetopt( argc, argv, "CDGIPRSTVWXZfhist" ) ) != EOF ) {
while ( ( c = Extra_UtilGetopt( argc, argv, "CDGIPRSTVWXZcfhist" ) ) != EOF ) {
switch ( c ) {
case 'C':
if ( globalUtilOptind >= argc )

View File

@ -603,6 +603,10 @@ Circuitrepresentation* runeSLIM(Circuitrepresentation * cir, const eSLIM_ParamSt
Gia_Man_t* applyeSLIM(Gia_Man_t * pGia, const eSLIM_ParamStruct* params) {
if (Gia_ManHasDangling(pGia)) {
std::cout << "Warning: Circuit must not contain dangling nodes.\n";
return pGia;
}
return runeSLIM(pGia, params);
}
@ -610,12 +614,6 @@ Abc_Ntk_t* applyelSLIM(Abc_Ntk_t * ntk, const eSLIM_ParamStruct* params) {
return runeSLIM(ntk, params);
}
Abc_Ntk_t* applyetSLIM(Abc_Ntk_t * ntk, const eSLIM_ParamStruct* params) {
return runeSLIM(ntk, params);
}

View File

@ -79,6 +79,7 @@ namespace eSLIM {
}
eSLIMCirMan::eSLIMCirMan(Gia_Man_t * pGia) : eSLIMCirMan(Gia_ManObjNum(pGia)) {
assert (!Gia_ManHasDangling(pGia));
Gia_ManConst0(pGia)->Value = 0;
Gia_Obj_t * pObj;
int i;