llvm-dwarfutil - 複製和處理除錯資訊的工具

語法

llvm-dwarfutil [選項] 輸入 輸出

說明

llvm-dwarfutil 是一個用於複製和處理除錯資訊的工具。

在基本用法中,它會將輸入的語義複製到輸出。如果指定了任何選項,則可能會在此過程中修改輸出,例如刪除未使用的除錯資訊。

如果為輸入檔案指定了“-”,則從程式的標準輸入串流讀取輸入。如果為輸出檔案指定了“-”,則將輸出寫入程式的標準輸出串流。

該工具仍在積極開發中。

命令列選項

--garbage-collection

刪除與已丟棄區段相關的除錯資訊片段。當連結器執行區段垃圾回收時,會遺留被遺棄的除錯資訊。此類被遺棄的除錯資訊使用墓碑值引用位址範圍。因此,當指定此選項時,該工具會刪除標記有墓碑值的除錯資訊。

該選項預設為啟用。

--odr-deduplication

刪除重複的類型(如果原始語言支援“單一定義規則”)。保留第一個類型定義並刪除其他定義,可能會顯著減少輸出除錯資訊的大小。

該選項預設為啟用。

--help, -h

列印命令列選項的摘要。

--no-garbage-collection

停用 --garbage-collection

--no-odr-deduplication

停用 --odr-deduplication

--no-separate-debug-file

停用 --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(或更低版本)地址範圍和可執行檔為 [1,1]。

  • maxpc:所有地址為 -1,DWARF v4(或更低版本)地址範圍為 -2。

  • universal:同時包含 bfdmaxpc

  • exec:與可執行區段的地址範圍匹配。

預設情況下使用 universal 值。

--verbose

啟用詳細日誌記錄。此選項會停用多執行緒模式。

--verify

對輸出 DWARF 偵錯資訊執行 DWARF 驗證器。

--version

列印此程式的版本。

支援的格式

以下格式目前受到 llvm-dwarfutil 的支援

ELF

結束狀態

如果發生錯誤,llvm-dwarfutil 會以非零的結束代碼退出。否則,它會以代碼 0 退出。

錯誤

要回報錯誤,請造訪 <https://github.com/llvm/llvm-project/labels/tools:llvm-dwarfutil/>。