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
6ae1f35f
Commit
6ae1f35f
authored
Feb 06, 2017
by
Bruno Schmitt
Browse files
Options
Browse Files
Download
Plain Diff
Merged alanmi/abc into default
parents
0fb4442a
495a34e3
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
7 additions
and
7 deletions
+7
-7
src/opt/dsc/dsc.c
+7
-7
No files found.
src/opt/dsc/dsc.c
View file @
6ae1f35f
...
@@ -51,14 +51,14 @@ struct Dsc_node_t_
...
@@ -51,14 +51,14 @@ struct Dsc_node_t_
/// FUNCTION DEFINITIONS ///
/// FUNCTION DEFINITIONS ///
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
inline
void
xorInPlace
(
word
*
pOut
,
word
*
pIn2
,
int
nWords
)
static
inline
void
xorInPlace
(
word
*
pOut
,
word
*
pIn2
,
int
nWords
)
{
{
int
w
;
int
w
;
for
(
w
=
0
;
w
<
nWords
;
w
++
)
for
(
w
=
0
;
w
<
nWords
;
w
++
)
pOut
[
w
]
^=
pIn2
[
w
];
pOut
[
w
]
^=
pIn2
[
w
];
}
}
void
dsc_debug_node
(
Dsc_node_t
*
pNode
,
int
nVars
,
const
int
TRUTH_WORDS
)
{
static
inline
void
dsc_debug_node
(
Dsc_node_t
*
pNode
,
int
nVars
,
const
int
TRUTH_WORDS
)
{
int
i
;
int
i
;
printf
(
"Node:
\t
%s
\n
"
,
pNode
->
exp
);
printf
(
"Node:
\t
%s
\n
"
,
pNode
->
exp
);
printf
(
"
\t
neg cof:
\t
"
);
Abc_TtPrintHexRev
(
stdout
,
pNode
->
pNegCof
,
nVars
);
printf
(
"
\t
neg cof:
\t
"
);
Abc_TtPrintHexRev
(
stdout
,
pNode
->
pNegCof
,
nVars
);
...
@@ -75,7 +75,7 @@ void dsc_debug_node(Dsc_node_t * pNode, int nVars, const int TRUTH_WORDS) {
...
@@ -75,7 +75,7 @@ void dsc_debug_node(Dsc_node_t * pNode, int nVars, const int TRUTH_WORDS) {
printf
(
"
\n
"
);
printf
(
"
\n
"
);
}
}
inline
int
dsc_and_test
(
Dsc_node_t
*
ni
,
Dsc_node_t
*
nj
,
const
int
TRUTH_WORDS
,
int
*
ci
,
int
*
cj
)
{
static
inline
int
dsc_and_test
(
Dsc_node_t
*
ni
,
Dsc_node_t
*
nj
,
const
int
TRUTH_WORDS
,
int
*
ci
,
int
*
cj
)
{
if
(
Abc_TtEqual
(
ni
->
pNegCof
,
nj
->
pNegCof
,
TRUTH_WORDS
))
{
*
ci
=
1
;
*
cj
=
1
;
return
1
;}
if
(
Abc_TtEqual
(
ni
->
pNegCof
,
nj
->
pNegCof
,
TRUTH_WORDS
))
{
*
ci
=
1
;
*
cj
=
1
;
return
1
;}
else
if
(
Abc_TtEqual
(
ni
->
pNegCof
,
nj
->
pPosCof
,
TRUTH_WORDS
))
{
*
ci
=
1
;
*
cj
=
0
;
return
1
;}
else
if
(
Abc_TtEqual
(
ni
->
pNegCof
,
nj
->
pPosCof
,
TRUTH_WORDS
))
{
*
ci
=
1
;
*
cj
=
0
;
return
1
;}
else
if
(
Abc_TtEqual
(
ni
->
pPosCof
,
nj
->
pNegCof
,
TRUTH_WORDS
))
{
*
ci
=
0
;
*
cj
=
1
;
return
1
;}
else
if
(
Abc_TtEqual
(
ni
->
pPosCof
,
nj
->
pNegCof
,
TRUTH_WORDS
))
{
*
ci
=
0
;
*
cj
=
1
;
return
1
;}
...
@@ -83,11 +83,11 @@ inline int dsc_and_test(Dsc_node_t *ni, Dsc_node_t *nj, const int TRUTH_WORDS, i
...
@@ -83,11 +83,11 @@ inline int dsc_and_test(Dsc_node_t *ni, Dsc_node_t *nj, const int TRUTH_WORDS, i
return
0
;
return
0
;
}
}
inline
int
dsc_xor_test
(
Dsc_node_t
*
ni
,
Dsc_node_t
*
nj
,
const
int
TRUTH_WORDS
)
{
static
inline
int
dsc_xor_test
(
Dsc_node_t
*
ni
,
Dsc_node_t
*
nj
,
const
int
TRUTH_WORDS
)
{
return
Abc_TtEqual
(
ni
->
pBoolDiff
,
nj
->
pBoolDiff
,
TRUTH_WORDS
);
return
Abc_TtEqual
(
ni
->
pBoolDiff
,
nj
->
pBoolDiff
,
TRUTH_WORDS
);
}
}
void
concat
(
char
*
target
,
char
begin
,
char
end
,
char
*
s1
,
int
s1Polarity
,
char
*
s2
,
int
s2Polarity
)
{
static
inline
void
concat
(
char
*
target
,
char
begin
,
char
end
,
char
*
s1
,
int
s1Polarity
,
char
*
s2
,
int
s2Polarity
)
{
*
target
++
=
begin
;
*
target
++
=
begin
;
//s1
//s1
if
(
!
s1Polarity
)
if
(
!
s1Polarity
)
...
@@ -104,7 +104,7 @@ void concat(char* target, char begin, char end, char* s1, int s1Polarity, char*
...
@@ -104,7 +104,7 @@ void concat(char* target, char begin, char end, char* s1, int s1Polarity, char*
*
target
=
'\0'
;
*
target
=
'\0'
;
}
}
void
cubeCofactor
(
word
*
const
pTruth
,
const
unsigned
int
*
const
cubeCof
,
const
int
TRUTH_WORDS
)
{
static
inline
void
cubeCofactor
(
word
*
const
pTruth
,
const
unsigned
int
*
const
cubeCof
,
const
int
TRUTH_WORDS
)
{
int
size
=
cubeCof
[
0
];
int
size
=
cubeCof
[
0
];
int
i
;
int
i
;
for
(
i
=
1
;
i
<=
size
;
i
++
)
{
for
(
i
=
1
;
i
<=
size
;
i
++
)
{
...
@@ -117,7 +117,7 @@ void cubeCofactor(word * const pTruth, const unsigned int * const cubeCof, const
...
@@ -117,7 +117,7 @@ void cubeCofactor(word * const pTruth, const unsigned int * const cubeCof, const
}
}
}
}
void
merge
(
unsigned
int
*
const
pOut
,
const
unsigned
int
*
const
pIn
)
{
static
inline
void
merge
(
unsigned
int
*
const
pOut
,
const
unsigned
int
*
const
pIn
)
{
const
int
elementsToCopy
=
pIn
[
0
];
const
int
elementsToCopy
=
pIn
[
0
];
int
i
,
j
;
int
i
,
j
;
for
(
i
=
pOut
[
0
]
+
1
,
j
=
1
;
j
<=
elementsToCopy
;
i
++
,
j
++
)
{
for
(
i
=
pOut
[
0
]
+
1
,
j
=
1
;
j
<=
elementsToCopy
;
i
++
,
j
++
)
{
...
...
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