parent
5e41c86d01
commit
dbc536c4fb
11
eval_tree.cc
11
eval_tree.cc
|
|
@ -697,7 +697,9 @@ NetEConst* NetEBComp::eval_eqeqeq_(bool ne_flag, const NetExpr*le, const NetExpr
|
||||||
// If the left value is longer check it against the pad bit.
|
// If the left value is longer check it against the pad bit.
|
||||||
if (res == verinum::V1) {
|
if (res == verinum::V1) {
|
||||||
verinum::V pad = verinum::V0;
|
verinum::V pad = verinum::V0;
|
||||||
if (is_signed) pad = rv.get(rv.len()-1);
|
if (is_signed)
|
||||||
|
pad = rv.get(rv.len()-1);
|
||||||
|
|
||||||
for (unsigned idx = cnt ; idx < lv.len() ; idx += 1)
|
for (unsigned idx = cnt ; idx < lv.len() ; idx += 1)
|
||||||
if (lv.get(idx) != pad) {
|
if (lv.get(idx) != pad) {
|
||||||
res = verinum::V0;
|
res = verinum::V0;
|
||||||
|
|
@ -708,13 +710,16 @@ NetEConst* NetEBComp::eval_eqeqeq_(bool ne_flag, const NetExpr*le, const NetExpr
|
||||||
// If the right value is longer check it against the pad bit.
|
// If the right value is longer check it against the pad bit.
|
||||||
if (res == verinum::V1) {
|
if (res == verinum::V1) {
|
||||||
verinum::V pad = verinum::V0;
|
verinum::V pad = verinum::V0;
|
||||||
if (is_signed) pad = lv.get(lv.len()-1);
|
if (is_signed)
|
||||||
|
pad = lv.get(lv.len()-1);
|
||||||
|
|
||||||
for (unsigned idx = cnt ; idx < rv.len() ; idx += 1) {
|
for (unsigned idx = cnt ; idx < rv.len() ; idx += 1) {
|
||||||
if (rv.get(idx) != pad)
|
if (rv.get(idx) != pad) {
|
||||||
res = verinum::V0;
|
res = verinum::V0;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (ne_flag) {
|
if (ne_flag) {
|
||||||
if (res == verinum::V0) res = verinum::V1;
|
if (res == verinum::V0) res = verinum::V1;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue