If an instruction does not override congruentTo, it defaults to comparing the value numbers of the operands. This is error prone, see bug 719774.
Created attachment 590770 [details] [diff] [review]
I don't really like the name "congruentIfEqualOperands", but I can't think of a better name, suggestions welcome.
(congruentIfOperandsEqual reads 8% better)
(In reply to David Anderson [:dvander] from comment #2)
> (congruentIfOperandsEqual reads 8% better)
Pushed with this change:
Probably a SS win because we're now able to hoist the SETELEM bounds check (the alias set for MStoreElement was too strict).