2

GCC 用プラグインを使用して翻訳単位に関する必要な情報を収集し、そのベースで AST を変更する必要があります。情報収集の仕方はもうわかった。しかし、CRT に渡される前に AST を変更する方法をまだ理解していません。この件に関する情報はほとんどありません。このテーマについて何を読むべきか教えてください。考えやリンクを共有します。

ありがとう。

PS私はすでにこれらのリンクのすべてを読んでいます:

http://en.wikibooks.org/wiki/GNU_C_Compiler_Internals/Print_version http://developer.apple.com/library/mac/#documentation/DeveloperTools/gcc-4.2.1/gccint/index.html#Top

4

2 に答える 2

1

GCCテストスイートには、そのような変更の基本的な例が含まれています。http://gcc.gnu.org/viewcvs/gcc/trunk/gcc/testsuite/gcc.dg/plugin/finish_unit_plugin.cを参照してください。start_unit_plugin.cは変数の作成方法を示しています。残念ながら、より深刻な変更については、GCCソースコードがおそらく最善の策です。

于 2011-09-23T05:06:18.640 に答える
0

この取り組みのために GCC に縛られていますか? ROSE コンパイラは、ソース レベルの変更を実行し、結果のコードをバックエンド コンパイラに渡すために特別に構築されています。

于 2011-08-05T21:43:56.487 に答える