You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is because we have incorrectly added the requirement that in order to remove a BinaryNode its opcode should be equal to its parent opcode which is not valid in this case.
The text was updated successfully, but these errors were encountered:
We had erroneously added the condition that to coalesce nodes the binary
operators of the parent and child node must be equal. This fails for the case
where we first constant-fold nodes having a differen operator than the parent
and then need to coalesce the constant folded node into the parent.
Fixes issue #932
…s parent (#943)
We can only coalesce if the operator of the current and parent node is
commutative and associative. This is because after coalescing we later
need to sort the nodes and if the operator is not commutative and
associative then sorting would be incorrect.
We can coalesce in the following scenarios:
1. The current and parent nodes have the same operator OR
2. The current node is the only child of its operator node (maybe as a
result of constant folding).
Fixes issue #932
Handle the following case in bounds widening:
Currently, we hit an assert:
This is because we have incorrectly added the requirement that in order to remove a BinaryNode its opcode should be equal to its parent opcode which is not valid in this case.
The text was updated successfully, but these errors were encountered: