Avatar
細かいところで、依存解析をすると、計算の順序を入れ替えられる場所が見つかったりします。 (たとえば a + 1 == b + 1 の両辺はどっちから構築しても同じ結果になる) それで、メモリ上の変数の値は一度レジスタに置かないと計算ができないんで、 命令の順番を入れ替えてなるべくレジスタに同じ値を長くおいておければ、 メモリへの退避書き込みと読み出しの回数を減らせて早くなるとか、そういう話を聞いたことがあります (edited)
10:24 AM
あ、でもこれはCPUに依存した話だからLLVM-IR以降のアセンブラ生成時の最適化だからSILは関係ないですね