summaryrefslogtreecommitdiffstats
path: root/src/opt
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2014-12-11 11:14:04 -0800
committerAlan Mishchenko <alanmi@berkeley.edu>2014-12-11 11:14:04 -0800
commitac7633c5a4c874bd6f29827017ee23fc23613ad5 (patch)
tree9b2dd262555a62ceb0ae078c895de86e2a575874 /src/opt
parent4f940de51880c83228b1923fe245af33de1fe346 (diff)
downloadabc-ac7633c5a4c874bd6f29827017ee23fc23613ad5.tar.gz
abc-ac7633c5a4c874bd6f29827017ee23fc23613ad5.tar.bz2
abc-ac7633c5a4c874bd6f29827017ee23fc23613ad5.zip
Integrating barrier buffers.
Diffstat (limited to 'src/opt')
-rw-r--r--src/opt/dau/dauGia.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/opt/dau/dauGia.c b/src/opt/dau/dauGia.c
index cc8ca23e..b75ded61 100644
--- a/src/opt/dau/dauGia.c
+++ b/src/opt/dau/dauGia.c
@@ -494,8 +494,15 @@ void * Dsm_ManDeriveGia( void * pGia, int fUseMuxes )
vCover = Vec_IntAlloc( 1 << 16 );
Gia_ManHashStart( pNew );
Gia_ObjComputeTruthTableStart( p, Gia_ManLutSizeMax(p) );
- Gia_ManForEachLut( p, iLut )
+ Gia_ManForEachAnd( p, pObj, iLut )
{
+ if ( Gia_ObjIsBuf(pObj) )
+ {
+ pObj->Value = Gia_ManAppendBuf( pNew, Gia_ObjFanin0Copy(pObj) );
+ continue;
+ }
+ if ( !Gia_ObjIsLut(p, iLut) )
+ continue;
// collect leaves
Vec_IntClear( vLeaves );
Gia_LutForEachFanin( p, iLut, iVar, k )