https://github.com/jpienaar commented: I was confused about the pattern you replaced yes, I think it was due to not having type inference defined. So it did a little local type inference by canonicalizing type (same ops remain). https://github.com/llvm/llvm-project/pull/98531