タグ

都市伝説とプログラムに関するiwwのブックマーク (1)

  • KMC Staff Blog:比較を 0 と行うという最適化は有効なのか ?

    2009年11月13日 比較を 0 と行うという最適化は有効なのか ? 多くの CPU の命令セットでは、0 との比較を特別扱いしています。 そのため、ループを書く際には、なるべく 0 と比較するように書いた方が速いので良い、という主張をたまに聞きます。 しかし、一般的な for 文のイディオム for (i = 0; i < N; i++) を崩してまで、0 と比較するように書く意味が、当にあるのでしょうか ? それぐらいは、現代のコンパイラならば勝手に最適化してくれそうな気もします。 というわけで、x86、ARM、SH、MIPS、PPC で検証してみました。 x86 は、手元の MinGW の gcc 4.4.0 です。 それ以外の CPU は、弊社の exeGCC 4 (GCC 4.3.3 ベース) を使用しました。最適化レベルは、全て一般的な -O2 です。(FPU は無関係だと

  • 1