>>494
同一結果になる複数の命令があるとき最も高速なものを使うのは最適化の基本だぞ。×2乗算を加算に置き換えるとか太古のコンパイラからやってる話だ。 x86でx3,x5,x9の乗算にleaを使うテクはそのままARMに応用できる。
特定マイクロアーキテクチャ依存にしてもスーパースカラを前提にした命令スケジューリングとかやってない方がおかしいレベルだし。
L1キャッシュサイズ依存のループアンローリング量の調整とかまでくればどうかという気はするが、数式そのままに計算しないのはそろそろループをSIMDに展開するのが常識になりつつあるからなあ。