-fdump-tree-all
コマンドを使用してダンプ出力ファイルを生成し-fdump-rtl-all
ましたが、多くのダンプ ファイルを取得しました。GIMPLE のコードは疑似 C 構文であり、RTL ダンプ ファイルは低レベルすぎて理解できないと読みました。GIMPLE と RTL のダンプ ファイルを理解する方法はありますか? それをCコードまたは何か便利なものに変換できるソフトウェアはありますか? それを理解することを学ぶためのチュートリアルはありますか? ありがとう
1577 次
1 に答える
4
(私にとって)それを行う最善の方法は、いくつかの例をダンプし、出力されたコードを自分で理解することです。難しいことではありません。元のコードからいくつかの変更があり (goto を使用するとサイクルが変換されるなど)、gcc には多くのパスがあり、私のアドバイスは必要なものをダンプすることです。私の場合、次のコマンドを頻繁に使用します。
-fdump-tree-lower
-fdump-tree-cfg
-fdump-tree-ssa
-fdump-tree-optimized (it's the last pass before going into rtl passes)
rtl はほとんど圧縮できないため、その方言について十分に理解する必要があります。
于 2015-08-05T20:52:42.850 に答える