:note: we upcast the scalar if after the multiplication with the dot this give the same type.
.. note:
We execute this optimizer after the gemm optimizer. This allow to give more priority to gemm that give more speed up then this optimizer, but allow the gemm optimizer to ignore this op.
TODO: support when we can reorder the mul to generate a dot22scalar or fix the canonizer to merge them(1 mul with multiple inputs)
info('Not optimizing dot22 with inputs',d,m,d.type,m.type,'we need to check in a recursive way in the mul if we can reorder the graph. The canonizer should have done this.')