-
Notifications
You must be signed in to change notification settings - Fork 16
Open
Labels
Description
Hi @filipeom,
I'm seeing this kind of expressions:
owi: [ERROR] Assert failure: (bool.ne
(i32.add
(i32.add
(i32.add (i32.sub symbol_0 6)
(i32.add (i32.sub symbol_0 7)
(i32.sub symbol_0 6)))
(i32.add
(i32.add (i32.sub symbol_0 7)
(i32.sub symbol_0 6))
(i32.add (i32.sub symbol_0 6)
(i32.add (i32.sub symbol_0 7)
(i32.sub symbol_0 6)))))
(i32.add
(i32.add
(i32.add (i32.sub symbol_0 7)
(i32.sub symbol_0 6))
(i32.add (i32.sub symbol_0 6)
(i32.add (i32.sub symbol_0 7)
(i32.sub symbol_0 6))))
(i32.add
(i32.add (i32.sub symbol_0 6)
(i32.add (i32.sub symbol_0 7)
(i32.sub symbol_0 6)))
(i32.add
(i32.add (i32.sub symbol_0 7)
(i32.sub symbol_0 6))
(i32.add (i32.sub symbol_0 6)
(i32.add (i32.sub symbol_0 7)
(i32.sub symbol_0 6))))))) 13)The only symbol here is symbol_0 so I'm almost sure this could be simplified much more.
For instance:
(i32.add (i32.sub symbol_0 7) (i32.sub symbol_0 6))Is basically: (x - 7) + (x - 6)
And it should be simplified at least into:
(x + (x - 13))And then, we could probably simplify much more. WDYT? I'm not sure how annoying it would be to add this kind of simplifications...
Reactions are currently unavailable