我正在编写一个工具来向a2l文件添加变量,输入是elf文件。 为了搜索哪个编译单元(CU)具有变量,我必须搜索所有CU(直到满足变量)。 由于SW很大,找到一个变量需要时间。 我想知道是否有更快的方法来知道变量定义了哪个CU?
答案 0 :(得分:0)
DWARF标准包含可选部分.debug_pubnames
,为全局对象和函数提供名称到偏移的翻译。
另一种方法是使用符号表。如果它有一个变量条目,那么您可以将其地址与可选 .debug_aranges
部分一起使用,或者如果不这样做,请每隔DW_TAG_compile_unit
查找一个带有封闭地址的地址范围。