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,除非遇到用法錯誤,在這種情況下會傳回非零結束代碼。