Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
abc
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lvzhengyang
abc
Commits
c73c37a9
Commit
c73c37a9
authored
Oct 28, 2012
by
Alan Mishchenko
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Improvements to LMS code.
parent
4e52703b
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
48 additions
and
9 deletions
+48
-9
src/aig/gia/gia.h
+8
-0
src/aig/gia/giaScl.c
+26
-0
src/base/abc/abc.h
+2
-2
src/base/abci/abc.c
+12
-7
src/base/abci/abcRec3.c
+0
-0
No files found.
src/aig/gia/gia.h
View file @
c73c37a9
...
...
@@ -482,6 +482,13 @@ static inline int Gia_ManAppendXor( Gia_Man_t * p, int iLit0, int iLit1 )
{
return
Gia_ManAppendMux
(
p
,
iLit0
,
Abc_LitNot
(
iLit1
),
iLit1
);
}
static
inline
void
Gia_ManPatchCoDriver
(
Gia_Man_t
*
p
,
int
iCoIndex
,
int
iLit0
)
{
Gia_Obj_t
*
pObjCo
=
Gia_ManCo
(
p
,
iCoIndex
);
assert
(
Gia_ObjId
(
p
,
pObjCo
)
>
Abc_Lit2Var
(
iLit0
)
);
pObjCo
->
iDiff0
=
Gia_ObjId
(
p
,
pObjCo
)
-
Abc_Lit2Var
(
iLit0
);
pObjCo
->
fCompl0
=
Abc_LitIsCompl
(
iLit0
);
}
#define GIA_ZER 1
#define GIA_ONE 2
...
...
@@ -863,6 +870,7 @@ extern int Sat_ManTest( Gia_Man_t * pGia, Gia_Obj_t * pObj, int
extern
int
Gia_ManSeqMarkUsed
(
Gia_Man_t
*
p
);
extern
int
Gia_ManCombMarkUsed
(
Gia_Man_t
*
p
);
extern
Gia_Man_t
*
Gia_ManCleanup
(
Gia_Man_t
*
p
);
extern
Gia_Man_t
*
Gia_ManCleanupOutputs
(
Gia_Man_t
*
p
,
int
nOutputs
);
extern
Gia_Man_t
*
Gia_ManSeqCleanup
(
Gia_Man_t
*
p
);
extern
Gia_Man_t
*
Gia_ManSeqStructSweep
(
Gia_Man_t
*
p
,
int
fConst
,
int
fEquiv
,
int
fVerbose
);
/*=== giaShrink.c ===========================================================*/
...
...
src/aig/gia/giaScl.c
View file @
c73c37a9
...
...
@@ -94,6 +94,32 @@ Gia_Man_t * Gia_ManCleanup( Gia_Man_t * p )
return
Gia_ManDupMarked
(
p
);
}
/**Function*************************************************************
Synopsis [Skip the first outputs during cleanup.]
Description []
SideEffects []
SeeAlso []
***********************************************************************/
Gia_Man_t
*
Gia_ManCleanupOutputs
(
Gia_Man_t
*
p
,
int
nOutputs
)
{
Gia_Obj_t
*
pObj
;
int
i
;
assert
(
Gia_ManRegNum
(
p
)
==
0
);
assert
(
nOutputs
<
Gia_ManCoNum
(
p
)
);
Gia_ManCombMarkUsed
(
p
);
Gia_ManForEachCo
(
p
,
pObj
,
i
)
if
(
i
<
nOutputs
)
pObj
->
fMark0
=
1
;
else
break
;
return
Gia_ManDupMarked
(
p
);
}
/**Function*************************************************************
...
...
src/base/abc/abc.h
View file @
c73c37a9
...
...
@@ -789,7 +789,7 @@ extern ABC_DLL int Abc_NtkRecVarNum();
extern
ABC_DLL
Vec_Int_t
*
Abc_NtkRecMemory
();
extern
ABC_DLL
int
Abc_NtkRecStrashNode
(
Abc_Ntk_t
*
pNtkNew
,
Abc_Obj_t
*
pObj
,
unsigned
*
pTruth
,
int
nVars
);
/*=== abcRec2.c ==========================================================*/
extern
ABC_DLL
void
Abc_NtkRecStart2
(
Gia_Man_t
*
p
,
int
nVars
,
int
nCuts
,
int
fTrim
);
extern
ABC_DLL
void
Abc_NtkRecStart2
(
Gia_Man_t
*
p
,
int
nVars
,
int
nCuts
,
int
fTrim
);
extern
ABC_DLL
void
Abc_NtkRecStop2
();
extern
ABC_DLL
void
Abc_NtkRecAdd2
(
Abc_Ntk_t
*
pNtk
,
int
fUseSOPB
);
extern
ABC_DLL
void
Abc_NtkRecPs2
(
int
fPrintLib
);
...
...
@@ -799,7 +799,7 @@ extern ABC_DLL int Abc_NtkRecIsRunning2();
extern
ABC_DLL
int
Abc_NtkRecIsInTrimMode2
();
extern
ABC_DLL
void
Abc_NtkRecFilter2
(
int
nLimit
);
/*=== abcRec3.c ==========================================================*/
extern
ABC_DLL
void
Abc_NtkRecStart3
(
Gia_Man_t
*
p
,
int
nVars
,
int
nCuts
,
int
fTrim
);
extern
ABC_DLL
void
Abc_NtkRecStart3
(
Gia_Man_t
*
p
,
int
nVars
,
int
nCuts
,
int
fFuncOnly
,
int
fVerbose
);
extern
ABC_DLL
void
Abc_NtkRecStop3
();
extern
ABC_DLL
void
Abc_NtkRecAdd3
(
Abc_Ntk_t
*
pNtk
,
int
fUseSOPB
);
extern
ABC_DLL
void
Abc_NtkRecPs3
(
int
fPrintLib
);
...
...
src/base/abci/abc.c
View file @
c73c37a9
...
...
@@ -13056,9 +13056,10 @@ int Abc_CommandRecStart3( Abc_Frame_t * pAbc, int argc, char ** argv )
Gia_Man_t
*
pGia
=
NULL
;
int
nVars
=
6
;
int
nCuts
=
32
;
int
fTrim
=
0
;
int
fFuncOnly
=
0
;
int
fVerbose
=
0
;
Extra_UtilGetoptReset
();
while
(
(
c
=
Extra_UtilGetopt
(
argc
,
argv
,
"KC
t
h"
)
)
!=
EOF
)
while
(
(
c
=
Extra_UtilGetopt
(
argc
,
argv
,
"KC
fv
h"
)
)
!=
EOF
)
{
switch
(
c
)
{
...
...
@@ -13084,8 +13085,11 @@ int Abc_CommandRecStart3( Abc_Frame_t * pAbc, int argc, char ** argv )
if
(
nCuts
<
1
)
goto
usage
;
break
;
case
't'
:
fTrim
^=
1
;
case
'f'
:
fFuncOnly
^=
1
;
break
;
case
'v'
:
fVerbose
^=
1
;
break
;
case
'h'
:
goto
usage
;
...
...
@@ -13131,16 +13135,17 @@ int Abc_CommandRecStart3( Abc_Frame_t * pAbc, int argc, char ** argv )
return
0
;
}
}
Abc_NtkRecStart3
(
pGia
,
nVars
,
nCuts
,
f
Trim
);
Abc_NtkRecStart3
(
pGia
,
nVars
,
nCuts
,
f
FuncOnly
,
fVerbose
);
return
0
;
usage:
Abc_Print
(
-
2
,
"usage: rec_start3 [-K num] [-C num] [-
t
h]
\n
"
);
Abc_Print
(
-
2
,
"usage: rec_start3 [-K num] [-C num] [-
fv
h]
\n
"
);
Abc_Print
(
-
2
,
"
\t
starts recording AIG subgraphs (should be called for
\n
"
);
Abc_Print
(
-
2
,
"
\t
an empty network or after reading in a previous record)
\n
"
);
Abc_Print
(
-
2
,
"
\t
-K num : the largest number of inputs [default = %d]
\n
"
,
nVars
);
Abc_Print
(
-
2
,
"
\t
-C num : the max number of cuts used at a node (0 < num < 2^12) [default = %d]
\n
"
,
nCuts
);
Abc_Print
(
-
2
,
"
\t
-t : toggles the use of trimming [default = %s]
\n
"
,
fTrim
?
"yes"
:
"no"
);
Abc_Print
(
-
2
,
"
\t
-f : toggles recording functions without AIG subgraphs [default = %s]
\n
"
,
fFuncOnly
?
"yes"
:
"no"
);
Abc_Print
(
-
2
,
"
\t
-v : toggles additional verbose output [default = %s]
\n
"
,
fVerbose
?
"yes"
:
"no"
);
Abc_Print
(
-
2
,
"
\t
-h : print the command usage
\n
"
);
return
1
;
}
...
...
src/base/abci/abcRec3.c
View file @
c73c37a9
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment