mirror of
https://github.com/verilator/verilator.git
synced 2026-10-06 10:03:44 +02:00
Internals: Four state pre-pull (types) (#7520)
This commit is contained in:
+8
-2
@@ -1848,11 +1848,14 @@ V3Number& V3Number::opWildEq(const V3Number& lhs, const V3Number& rhs) {
|
||||
char outc = 1;
|
||||
for (int bit = 0; bit < std::max(lhs.width(), rhs.width()); ++bit) {
|
||||
if (!rhs.bitIsXZ(bit)) {
|
||||
if (lhs.bitIsXZ(bit)) {
|
||||
outc = 'x';
|
||||
goto last;
|
||||
}
|
||||
if (lhs.bitIs(bit) != rhs.bitIs(bit)) {
|
||||
outc = 0;
|
||||
goto last;
|
||||
}
|
||||
if (lhs.bitIsXZ(bit)) outc = 'x';
|
||||
}
|
||||
}
|
||||
last:
|
||||
@@ -1865,11 +1868,14 @@ V3Number& V3Number::opWildNeq(const V3Number& lhs, const V3Number& rhs) {
|
||||
char outc = 0;
|
||||
for (int bit = 0; bit < std::max(lhs.width(), rhs.width()); ++bit) {
|
||||
if (!rhs.bitIsXZ(bit)) {
|
||||
if (lhs.bitIsXZ(bit)) {
|
||||
outc = 'x';
|
||||
goto last;
|
||||
}
|
||||
if (lhs.bitIs(bit) != rhs.bitIs(bit)) {
|
||||
outc = 1;
|
||||
goto last;
|
||||
}
|
||||
if (lhs.bitIsXZ(bit)) outc = 'x';
|
||||
}
|
||||
}
|
||||
last:
|
||||
|
||||
Reference in New Issue
Block a user