llvm-cxxfilt - LLVM 符號名稱反編碼器

概要

llvm-cxxfilt [選項] [已修飾名稱…]

描述

llvm-cxxfilt 是一個符號反編碼器,可以用來取代 GNU c++filt 工具。它接受一系列符號名稱,並將它們的反編碼形式列印到標準輸出流。如果名稱無法反編碼,則會直接列印出來。

如果在命令列上未指定名稱,則會從標準輸入流以互動方式讀取名稱。從標準輸入讀取名稱時,每個輸入行都會根據非有效 Itanium 名稱修飾一部分的字元進行分割,即非字母數字字元、「.」、「$」或「_」的字元。名稱之間的分隔符會原樣複製到輸出。

範例

$ llvm-cxxfilt _Z3foov _Z3bari not_mangled
foo()
bar(int)
not_mangled
$ cat input.txt
| _Z3foov *** _Z3bari *** not_mangled |
$ llvm-cxxfilt < input.txt
| foo() *** bar(int) *** not_mangled |

選項

--format=<value>, -s

要假設的名稱修飾方案。有效值為 auto(預設,自動偵測樣式)和 gnu(假設 GNU/Itanium 樣式)。

--help, -h

列印命令列選項摘要。

--no-params, -p

不要反編碼函數參數或傳回類型。

--no-strip-underscore, -n

不要移除前導底線。這是除基於 Mach-O 的主機以外的所有平台的預設值。

--quote

在反編碼後的名稱周圍加上 。不要為已加上引號的名稱加上引號。

--strip-underscore, -_

在反編碼之前,從每個輸入名稱中移除單個前導底線(如果存在)。在基於 Mach-O 的平台上預設為開啟。

--types, -t

嘗試將名稱反編碼為類型名稱以及符號名稱。

--version

顯示 llvm-cxxfilt 可執行檔的版本。

@<FILE>

從回應檔案 <FILE> 讀取命令列選項。

結束狀態

llvm-cxxfilt 會傳回 0,除非遇到用法錯誤,在這種情況下會傳回非零結束代碼。

另請參閱

llvm-nm(1)