1

我想在 DWARF 中编码变量的生存范围。我该怎么做?我在 DWARF 3 pdf 的第 178 页规范中看到 DW_AT_high_pc 和 low_pc 不适用于带有 TAG_variable 标记的 DIE。我应该在哪里根据规范对其进行编码?

4

1 回答 1

1

你可以做两件事。

一种是您可以发出一个块并让变量出现在块中。当块结束时,变量将超出范围。如果您不进行复杂的优化,这是最简单的方法。

另一种方法是使用 DWARF 位置列表来表示变量的生存范围。请参阅 DWARF 4 标准的第 2.6.2 节(“位置列表”)(它们也在 DWARF 3 中,不过我没有在这里查找它)。

于 2015-02-11T15:08:11.343 回答