概要
llvm-dwarfdump [options] [filename …]
描述
llvm-dwarfdump llvm-dwarfdump解析目标文件,存档和.dSYM包中的DWARF节,并以人类可读的形式打印其内容。除非指定了--all
或者特定于部分的选项之一,否则仅打印.debug_info部分。
选项
-a, –all: 反汇编所有支持的DWARF部分
–arch=<arch>:转储指定CPU体系结构的DWARF调试信息。架构可以通过名称或编号指定。可以多次指定此选项,每个所需的体系结构一次。默认情况下将打印所有CPU架构
-c, –show-children:使用–debug-info,–find和–name选项时,显示调试信息条目的孩子
-f <name>, –find=
在加速器表中搜索确切的文本
并打印匹配的调试信息条目。如果在加速器表中找不到加速器表或您要查找的DIE的名称,请尝试使用较慢但更完整的–name选项。 -F, –show-form:在DWARF属性类型之后显示DWARF表单类型。
-h, –help: 显示此命令的帮助和用法。
-i, –ignore-case:在按名称或正则表达式搜索条目时忽略大小写区别。
-n <pattern>, –name=<pattern>:
查找并打印名称(DW_AT_name属性)与中的确切文本匹配的所有调试信息条目。使用该–regex选项可使 成为正则表达式,以实现更灵活的模式匹配。 –lookup=<address>:在调试信息中查找
并打印出文件,函数,块和行表详细信息。-o <path>, –out-file=<path>:将输出重定向到
指定的文件 -p,-show-parents:使用 –debug-info,–find和 –name选项时显示调试信息条目的父对象。
-r <n>, –recurse-depth=<n>:转储调试信息条目时,只递归到最大深度
–statistics:收集调试信息质量指标并将结果打印为机器可读的单行JSON输出。
-x,–regex:在搜索时将任何<pattern>字符串视为正则表达式,而不仅仅是完全匹配字符串。
-u,–uuid: 显示每个体系结构的UUID
–diff:将输出转换为更友好的格式,以便比较来自两个不同文件的DWARF输出
-v, –verbose:转储时显示详细信息。这有助于调试DWARF问题
–verify:通过验证编译单元链,DIE关系图,地址范围等来验证DWARF信息的结构
–version :显示版本号
–debug-abbrev, –debug-aranges, –debug-cu-index, –debug-frame [=
], –debug-gnu-pubnames, –debug-gnu-pubtypes, –debug-info [= ], –debug-line [= ], –debug-loc [= ], –debug-macro, –debug-pubnames, –debug-pubtypes, –debug-ranges, –debug-str, –debug-str-offsets, –debug-tu-index, –debug-types, –eh-frame, –gdb-index, –apple-names, –apple-types, –apple-namespaces, –apple-objc 按名称转储指定的DWARF部分。默认情况下仅显示 .debug_info部分。某些条目支持添加=
作为在相应部分中提供转储的准确条目的可选偏移量的方法。提供偏移时,只会转储该偏移处的条目,否则将转储整个部分。也可以使用–show-children适用的选项转储特定偏移的项目的子项 。
退出
如果输入文件已成功解析并转储,则llvm-dwarfdump返回0。否则,它返回1。