llvm-dwarfutil - 一個複製和操作除錯資訊的工具¶
概要¶
llvm-dwarfutil [選項] 輸入 輸出
描述¶
llvm-dwarfutil 是一個複製和操作除錯資訊的工具。
在基本用法中,它會將輸入語義複製到輸出。如果指定任何選項,則可能會在過程中修改輸出,例如,通過移除未使用的除錯資訊。
如果輸入檔案指定為 “-”,則從程式的標準輸入流讀取輸入。如果輸出檔案指定為 “-”,則輸出寫入到程式的標準輸出流。
此工具仍在積極開發中。
命令列選項¶
- --garbage-collection¶
移除與已丟棄區段相關的除錯資訊片段。當鏈結器執行區段垃圾回收時,會留下廢棄的除錯資訊。這些廢棄的除錯資訊使用墓碑值引用地址範圍。因此,當指定此選項時,該工具會移除標記有墓碑值的除錯資訊。
該選項預設為啟用。
- --odr-deduplication¶
移除重複的類型(如果來源語言支援“單一定義規則”)。保留第一個類型定義並移除其他定義,可能會顯著減小輸出除錯資訊的大小。
該選項預設為啟用。
- --help, -h¶
印出命令列選項的摘要。
- --no-garbage-collection¶
- --no-odr-deduplication¶
- --no-separate-debug-file¶
- --num-threads=<n>, -j¶
指定用於處理的最大並行執行緒數 (n)。
- --separate-debug-file¶
產生包含輸出除錯資訊的單獨檔案。使用 llvm-dwarfutil 與該選項等同於以下命令集
:program:`llvm-objcopy` --only-keep-debug in-file out-file.debug
:program:`llvm-objcopy` --strip-debug in-file out-file
:program:`llvm-objcopy` --add-gnu-debuglink=out-file.debug out-file
- --tombstone=<value>¶
<value> 可以是以下值之一
bfd: 所有地址為零,DWARF v4(或更低版本)地址範圍和 exec 為 [1,1]。
maxpc: 所有地址為 -1,DWARF v4(或更低版本)地址範圍為 -2。
universal: 同時包含 bfd 和 maxpc。
exec: 與可執行區段的地址範圍匹配。
預設使用值 universal。
- --verbose¶
啟用詳細記錄。此選項停用多執行緒模式。
- --verify¶
對輸出 DWARF 除錯資訊執行 DWARF 驗證器。
- --version¶
印出此程式的版本。
支援的格式¶
以下格式目前受到 llvm-dwarfutil 支援
ELF
結束狀態¶
llvm-dwarfutil 如果發生錯誤,則以非零退出代碼退出。否則,以代碼 0 退出。
錯誤¶
要回報錯誤,請訪問 <https://github.com/llvm/llvm-project/labels/tools:llvm-dwarfutil/>。