From af62d29d5e4a8336b7a9d81d17f647cf3ce3b4b8 Mon Sep 17 00:00:00 2001 From: Alan Mishchenko Date: Tue, 9 Oct 2018 14:18:18 +0200 Subject: Corner-case bug fix in LUT to AIG translation. --- src/opt/dau/dauGia.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/opt/dau/dauGia.c') diff --git a/src/opt/dau/dauGia.c b/src/opt/dau/dauGia.c index 424ec53f..eebfa9a8 100644 --- a/src/opt/dau/dauGia.c +++ b/src/opt/dau/dauGia.c @@ -449,6 +449,10 @@ int Dsm_ManTruthToGia( void * p, word * pTruth, Vec_Int_t * vLeaves, Vec_Int_t * Abc_TtCopy( pTruthCopy, pTruth, Abc_TtWordNum(Vec_IntSize(vLeaves)), 0 ); m_Calls++; assert( Vec_IntSize(vLeaves) <= DAU_DSD_MAX_VAR ); + if ( Vec_IntSize(vLeaves) == 0 ) + return (int)(pTruth[0] & 1); + if ( Vec_IntSize(vLeaves) == 1 ) + return Abc_LitNotCond( Vec_IntEntry(vLeaves, 0), (int)(pTruth[0] & 1) ); // collect delay information if ( fDelayBalance && fUseMuxes ) { -- cgit v1.2.3