llvm-cgdata - LLVM 代码生成数据工具¶
语法¶
llvm-cgdata [命令] [选项] (<二进制文件>|<.cgdata>)
描述¶
:program:llvm-cgdata 工具解析嵌入在已编译二进制文件中的原始代码生成数据,并将它们合并到单个 .cgdata 文件中。它还可以检查和操作 .cgdata 文件。目前,该工具支持保存和恢复概述哈希树,从而实现跨模块的全局函数概述,从而在后续编译中实现更高效的函数概述。该设计是可扩展的,允许在未来合并其他代码生成摘要和优化技术,例如全局函数合并。
命令¶
至少需要以下命令之一
- --convert¶
将 .cgdata 文件从一种格式转换为另一种格式。
- --merge¶
将二进制文件中多个原始代码生成数据合并到单个 .cgdata 文件中。
- --show¶
显示有关 .cgdata 文件的摘要信息。
选项¶
llvm-cgdata 支持以下选项
- --format=[text|binary]¶
指定输出 .cgdata 文件的格式。
- --output=<string>¶
指定输出文件名。
- --cgdata-version¶
打印 llvm-cgdata 工具的版本。
示例¶
- 要将 .cgdata 文件从二进制格式转换为文本格式
$ llvm-cgdata –convert –format=text input.cgdata –output=output.data
- 要将目标文件中的多个原始代码生成数据合并到单个 .cgdata 文件中
$ llvm-cgdata –merge file1.o file2.o –output=merged.cgdata
- 要显示有关 .cgdata 文件的摘要信息
$ llvm-cgdata –show input.cgdata