【问题标题】:Encode live range in DWARF在 DWARF 中编码实时范围
【发布时间】:2015-02-11 10:19:46
【问题描述】:

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

【问题讨论】:

    标签: compiler-construction gdb dwarf


    【解决方案1】:

    你可以做两件事。

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-26
      • 1970-01-01
      • 1970-01-01
      • 2018-03-07
      • 2021-05-23
      • 2020-04-01
      相关资源
      最近更新 更多