Well, I have tested running time, without -flto but with -d:release of course.
Mirans fix was an improvement for ^ 2 (square) but still slower than plain "*". My suggested fix was equal to "*" for both of my suggestions, and assembler was perfect. So I assumed there just is a drawback of my solution. OK, will look at assembler.
