1

DWARF で変数のライブ範囲をエンコードしたい。どうすればいいですか?DWARF 3 pdf の 178 ページの仕様で、DW_AT_high_pc と low_pc は TAG_variable でタグ付けされた DIE には適用されないことがわかります。仕様に従ってどこにエンコードすればよいですか?

4

1 に答える 1

1

できることは 2 つあります。

1 つは、ブロックを発行して、変数をブロックに表示できることです。ブロックが終了すると、変数はスコープ外になります。複雑な最適化を行っていない場合、これが最も簡単な方法です。

もう 1 つの方法は、DWARF ロケーション リストを使用して、変数の有効な範囲を表すことです。DWARF 4標準のセクション2.6.2(「ロケーションリスト」)を参照してください(DWARF 3にもありましたが、ここで調べることはできません)。

于 2015-02-11T15:08:11.343 に答える