エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
最適化コンパイラへのいざない (3) 定数に関する最適化 - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
最適化コンパイラへのいざない (3) 定数に関する最適化 - Qiita
どうやら,1日が何秒なのかを表しているようです.人間にとってはわかりやすいですね. ですがコンパイ... どうやら,1日が何秒なのかを表しているようです.人間にとってはわかりやすいですね. ですがコンパイラからするとどうでしょうか.仮に上のプログラムを愚直に目的コードへ翻訳すると,実行時に整数に対する掛け算を3回行うことになります. 定数畳み込み 上のプログラムは,下のように書き直すと,計算機にとっては嬉しいものとなります. このように,定数式(あらかじめ計算しておくことのできる式)を単純化することを 定数畳み込み と言います. 実装するのが比較的簡単な最適化手法ですが,次に紹介する定数伝播と組み合わせると,生成される目的コードがグッと短くなるでしょう. 具体例 プログラムが木で表されているなら,深さ優先で計算していくことで簡単に定数畳み込みを実現することが出来ます. 3番地コードのような形式の場合,次に説明する定数伝播の考え方を知っていないと,欲しい動作が得られません.