From 8149daf921f09956467e8da22efd8a9208ebfebb Mon Sep 17 00:00:00 2001 From: longfei Date: Sat, 6 Jun 2026 20:31:57 +0800 Subject: [PATCH] giaSatLut: fix &satlut expanding LUT size from K=5 to K=6 Sbl_CutIsFeasible only checked LutSize <= 4 before the final return Count <= 6, allowing 6-input cuts when LutSize=5. Add the missing LutSize <= 5 check after the 5th bit-strip. --- src/aig/gia/giaSatLut.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/aig/gia/giaSatLut.c b/src/aig/gia/giaSatLut.c index 679c9e58b..31e0972f8 100644 --- a/src/aig/gia/giaSatLut.c +++ b/src/aig/gia/giaSatLut.c @@ -639,7 +639,9 @@ static inline int Sbl_CutIsFeasible( word CutI1, word CutI2, word CutN1, word Cu CutI1 &= CutI1-1; CutI2 &= CutI2-1; CutN1 &= CutN1-1; CutN2 &= CutN2-1; Count += (CutI1 != 0) + (CutI2 != 0) + (CutN1 != 0) + (CutN2 != 0); if ( LutSize <= 4 ) return Count <= 4; - CutI1 &= CutI1-1; CutI2 &= CutI2-1; CutN1 &= CutN1-1; CutN2 &= CutN2-1; Count += (CutI1 != 0) + (CutI2 != 0) + (CutN1 != 0) + (CutN2 != 0); + CutI1 &= CutI1-1; CutI2 &= CutI2-1; CutN1 &= CutN1-1; CutN2 &= CutN2-1; Count += (CutI1 != 0) + (CutI2 != 0) + (CutN1 != 0) + (CutN2 != 0); + if ( LutSize <= 5 ) + return Count <= 5; CutI1 &= CutI1-1; CutI2 &= CutI2-1; CutN1 &= CutN1-1; CutN2 &= CutN2-1; Count += (CutI1 != 0) + (CutI2 != 0) + (CutN1 != 0) + (CutN2 != 0); return Count <= 6; }