Skip to content

Commit 1cdaaad

Browse files
committed
Merge remote-tracking branch 'upstream/master' into yosys-experimental
2 parents 44a2996 + 68c576c commit 1cdaaad

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

59 files changed

+6933
-704
lines changed

CMakeLists.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ cmake_minimum_required(VERSION 3.5.0)
33
include(CMakeParseArguments)
44
include(CheckCCompilerFlag)
55
include(CheckCXXCompilerFlag)
6+
# Generate compilation database compile_commands.json
7+
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
68

79
# Default c++ standard used unless otherwise specified in target_compile_features.
810
set(CMAKE_CXX_STANDARD 17 CACHE STRING "the C++ standard to use for this project")

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ MODULES := \
2727
src/misc/mem src/misc/bar src/misc/bbl src/misc/parse \
2828
src/opt/cut src/opt/fxu src/opt/fxch src/opt/rwr src/opt/mfs src/opt/sim \
2929
src/opt/ret src/opt/fret src/opt/res src/opt/lpk src/opt/nwk src/opt/rwt src/opt/rar \
30-
src/opt/cgt src/opt/csw src/opt/dar src/opt/dau src/opt/dsc src/opt/sfm src/opt/sbd \
30+
src/opt/cgt src/opt/csw src/opt/dar src/opt/dau src/opt/dsc src/opt/sfm src/opt/sbd src/opt/eslim \
3131
src/sat/bsat src/sat/xsat src/sat/satoko src/sat/csat src/sat/msat src/sat/psat src/sat/cnf src/sat/bmc src/sat/glucose src/sat/glucose2 src/sat/kissat src/sat/cadical \
3232
src/bool/bdc src/bool/deco src/bool/dec src/bool/kit src/bool/lucky \
3333
src/bool/rsb src/bool/rpo \

abclib.dsp

Lines changed: 40 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/aig/gia/gia.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1808,7 +1808,7 @@ extern Gia_Man_t * Gia_ManTransductionBdd( Gia_Man_t * pGia, int nType,
18081808
extern Gia_Man_t * Gia_ManTransductionTt( Gia_Man_t * pGia, int nType, int fMspf, int nRandom, int nSortType, int nPiShuffle, int nParameter, int fLevel, Gia_Man_t * pExdc, int fNewLine, int nVerbose );
18091809

18101810
/*=== giaRrr.cpp ===========================================================*/
1811-
extern Gia_Man_t * Gia_ManRrr( Gia_Man_t *pGia, int iSeed, int nWords, int nTimeout, int nSchedulerVerbose, int nPartitionerVerbose, int nOptimizerVerbose, int nAnalyzerVerbose, int nSimulatorVerbose, int nSatSolverVerbose, int fUseBddCspf, int fUseBddMspf, int nConflictLimit, int nSortType, int nOptimizerFlow, int nSchedulerFlow, int nDistance, int nRestarts, int nThreads, int nWindowSize, int fDeterministic );
1811+
extern Gia_Man_t * Gia_ManRrr( Gia_Man_t *pGia, int iSeed, int nWords, int nTimeout, int nSchedulerVerbose, int nPartitionerVerbose, int nOptimizerVerbose, int nAnalyzerVerbose, int nSimulatorVerbose, int nSatSolverVerbose, int fUseBddCspf, int fUseBddMspf, int nConflictLimit, int nSortType, int nOptimizerFlow, int nSchedulerFlow, int nPartitionType, int nDistance, int nJobs, int nThreads, int nPartitionSize, int nPartitionSizeMin, int fDeterministic, int nParallelPartitions, int fOptOnInsert, int fGreedy );
18121812

18131813
/*=== giaCTas.c ===========================================================*/
18141814
typedef struct Tas_Man_t_ Tas_Man_t;

src/aig/gia/giaAiger.c

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -406,41 +406,41 @@ Gia_Man_t * Gia_AigerReadFromMemory( char * pContents, int nFileSize, int fGiaSi
406406
if ( *pType == 'i' )
407407
{
408408
if ( vNamesIn == NULL )
409-
vNamesIn = Vec_PtrAlloc( nInputs + nLatches );
410-
if ( Vec_PtrSize(vNamesIn) != iTerm )
409+
vNamesIn = Vec_PtrStart( nInputs );
410+
if ( Vec_PtrSize(vNamesIn) <= iTerm )
411411
{
412412
fError = 1;
413413
break;
414414
}
415-
Vec_PtrPush( vNamesIn, Abc_UtilStrsav(pName) );
415+
Vec_PtrWriteEntry( vNamesIn, iTerm, Abc_UtilStrsav(pName) );
416416
}
417417
else if ( *pType == 'o' )
418418
{
419419
if ( vNamesOut == NULL )
420-
vNamesOut = Vec_PtrAlloc( nOutputs + nLatches );
421-
if ( Vec_PtrSize(vNamesOut) != iTerm )
420+
vNamesOut = Vec_PtrStart( nOutputs );
421+
if ( Vec_PtrSize(vNamesOut) <= iTerm )
422422
{
423423
fError = 1;
424424
break;
425425
}
426-
Vec_PtrPush( vNamesOut, Abc_UtilStrsav(pName) );
426+
Vec_PtrWriteEntry( vNamesOut, iTerm, Abc_UtilStrsav(pName) );
427427
}
428428
else if ( *pType == 'l' )
429429
{
430430
char Buffer[1000];
431431
assert( strlen(pName) < 995 );
432432
sprintf( Buffer, "%s_in", pName );
433433
if ( vNamesRegIn == NULL )
434-
vNamesRegIn = Vec_PtrAlloc( nLatches );
434+
vNamesRegIn = Vec_PtrStart( nLatches );
435435
if ( vNamesRegOut == NULL )
436-
vNamesRegOut = Vec_PtrAlloc( nLatches );
437-
if ( Vec_PtrSize(vNamesRegIn) != iTerm )
436+
vNamesRegOut = Vec_PtrStart( nLatches );
437+
if ( Vec_PtrSize(vNamesRegIn) <= iTerm )
438438
{
439439
fError = 1;
440440
break;
441441
}
442-
Vec_PtrPush( vNamesRegIn, Abc_UtilStrsav(Buffer) );
443-
Vec_PtrPush( vNamesRegOut, Abc_UtilStrsav(pName) );
442+
Vec_PtrWriteEntry( vNamesRegIn, iTerm, Abc_UtilStrsav(Buffer) );
443+
Vec_PtrWriteEntry( vNamesRegOut, iTerm, Abc_UtilStrsav(pName) );
444444
}
445445
else if ( *pType == 'n' )
446446
{

src/aig/gia/giaNf.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2674,6 +2674,9 @@ Gia_Man_t * Nf_ManPerformMapping( Gia_Man_t * p, Jf_Par_t * pPars )
26742674
pNew = Nf_ManPerformMappingInt( p, pPars );
26752675
Gia_ManTransferTiming( pNew, p );
26762676
//Gia_ManCellMappingVerify( pNew );
2677+
// remove choices after mapping
2678+
ABC_FREE( pNew->pReprs );
2679+
ABC_FREE( pNew->pNexts );
26772680
}
26782681
//pNew->MappedDelay = (int)((If_Par_t *)pp)->FinalDelay;
26792682
//pNew->MappedArea = (int)((If_Par_t *)pp)->FinalArea;

src/aig/gia/giaRrr.cpp

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
ABC_NAMESPACE_IMPL_START
77

8-
Gia_Man_t *Gia_ManRrr(Gia_Man_t *pGia, int iSeed, int nWords, int nTimeout, int nSchedulerVerbose, int nPartitionerVerbose, int nOptimizerVerbose, int nAnalyzerVerbose, int nSimulatorVerbose, int nSatSolverVerbose, int fUseBddCspf, int fUseBddMspf, int nConflictLimit, int nSortType, int nOptimizerFlow, int nSchedulerFlow, int nDistance, int nRestarts, int nThreads, int nWindowSize, int fDeterministic) {
8+
Gia_Man_t *Gia_ManRrr(Gia_Man_t *pGia, int iSeed, int nWords, int nTimeout, int nSchedulerVerbose, int nPartitionerVerbose, int nOptimizerVerbose, int nAnalyzerVerbose, int nSimulatorVerbose, int nSatSolverVerbose, int fUseBddCspf, int fUseBddMspf, int nConflictLimit, int nSortType, int nOptimizerFlow, int nSchedulerFlow, int nPartitionType, int nDistance, int nJobs, int nThreads, int nPartitionSize, int nPartitionSizeMin, int fDeterministic, int nParallelPartitions, int fOptOnInsert, int fGreedy) {
99
rrr::AndNetwork ntk;
1010
ntk.Read(pGia, rrr::GiaReader<rrr::AndNetwork>);
1111
rrr::Parameter Par;
@@ -24,11 +24,16 @@ Gia_Man_t *Gia_ManRrr(Gia_Man_t *pGia, int iSeed, int nWords, int nTimeout, int
2424
Par.nSortType = nSortType;
2525
Par.nOptimizerFlow = nOptimizerFlow;
2626
Par.nSchedulerFlow = nSchedulerFlow;
27+
Par.nPartitionType = nPartitionType;
2728
Par.nDistance = nDistance;
28-
Par.nRestarts = nRestarts;
29+
Par.nJobs = nJobs;
2930
Par.nThreads = nThreads;
30-
Par.nWindowSize = nWindowSize;
31+
Par.nPartitionSize = nPartitionSize;
32+
Par.nPartitionSizeMin = nPartitionSizeMin;
3133
Par.fDeterministic = fDeterministic;
34+
Par.nParallelPartitions = nParallelPartitions;
35+
Par.fOptOnInsert = fOptOnInsert;
36+
Par.fGreedy = fGreedy;
3237
rrr::Perform(&ntk, &Par);
3338
Gia_Man_t *pNew = rrr::CreateGia(&ntk);
3439
return pNew;

0 commit comments

Comments
 (0)