1

Soot のビルトイン Reaching-Definition 分析に基づいて、これを行うプログラムを書きたいと思います。今、私はこれが正しいアプローチなのだろうかと思っていますか?私が検索したところ、誰もこの方向に興味を持っていないようです.

助言がありますか?

4

2 に答える 2

0

おそらくやりたいことは、反復データ フロー ソルバーを使用して一連の範囲を結合することです。入力からの範囲値を組み合わせて、基本ブロックにまたがる一連の定義の範囲値にします。

このためには、通常、制御フロー グラフと基本ブロック間の伝達関数が必要です。到達定義グラフも同様に扱うことができると思います。

次に、コード全体に範囲をプッシュするために、プロシージャ間の範囲の伝播が必要になります。

于 2014-04-09T01:04:32.810 に答える
0

これは、あなたが述べている本当に一般的な問題です。定義に到達することは、これとはあまり関係がありません。グローバル値の番号付けは、あなたが明らかに望んでいるものですが、あなたの説明からはわかりにくいです. Soot メーリング リストで、より詳細な問題の説明を試してみてください。

于 2014-04-09T05:54:31.900 に答える