參考文檔¶
LLVM 與 API 參考文檔。
API 參考文檔¶
- Doxygen 產生的文檔
(類別)
- 如何使用屬性
解答關於新屬性基礎架構的一些問題。
LLVM 參考文檔¶
命令列工具¶
- LLVM 命令指南
LLVM 命令列工具的參考手冊(LLVM 工具的 “man” 頁面)。
- LLVM bugpoint 工具:設計與使用
自動錯誤查找器和測試案例縮減器的描述與使用資訊。
- 使用 -opt-bisect-limit 除錯最佳化錯誤
用於除錯最佳化導致的失敗的命令列選項。
- 符號器標記格式
llvm-symbolizer 接受的日誌符號器標記的參考。
- Microsoft PDB 檔案格式
Microsoft PDB(程式資料庫)檔案格式的詳細描述。
垃圾回收¶
- LLVM 的垃圾回收
原始碼語言編譯器應該用於編譯已進行垃圾回收程式的介面。
- LLVM 中的垃圾回收安全點
這描述了一組用於垃圾回收支援的實驗性擴展。
LibFuzzer¶
- libFuzzer – 一個用於覆蓋率導向模糊測試的函式庫。
一個用於編寫進程內導向模糊器的函式庫。
- 模糊測試 LLVM 函式庫與工具
關於編寫和使用模糊器以查找 LLVM 中的錯誤的資訊。
LLVM IR¶
- LLVM 語言參考手冊
定義 LLVM 中間表示法和不同節點的組裝形式。
- 未定義行為 (UB)
關於 UB/undef/poison 是什麼以及何時使用它們的指南。
- InAlloca 屬性的設計與使用
inalloca 參數屬性的描述。
- LLVM 位元碼檔案格式
這描述了用於 LLVM “bc” 檔案的檔案格式和編碼。
- 機器 IR (MIR) 格式參考手冊
MIR 序列化格式的參考手冊,用於測試 LLVM 的程式碼生成過程。
- 全域指令選擇
這描述了原型指令選擇替換,GlobalISel。
- 收斂操作語義
收斂操作語義和相關內建函數的描述。
測試與除錯¶
- LLVM 測試基礎架構指南
使用 LLVM 測試基礎架構的參考手冊。
- 測試套件指南
描述如何編譯和運行測試套件基準測試。
- GWP-ASan
一個專為生產環境設計的採樣堆積記憶體錯誤偵測工具組。
XRay¶
- XRay instrumentation
關於如何在 LLVM 中使用 XRay 的高階文檔。
- 使用 XRay 除錯
一個關於如何使用 XRay 除錯應用程式的範例。
其他主題¶
- FaultMaps 與隱式檢查
LLVM 支援將控制流程摺疊到錯誤的機器指令中。
- LLVM 原子指令與並行指南
關於 LLVM 並行模型的資訊。
- LLVM 中的例外處理
本文檔描述了 LLVM 中例外處理的設計與實作。
- LLVM 擴展
LLVM 針對工具和格式的特定擴展,LLVM 尋求與之相容。
- 如何為您的類別層次結構設定 LLVM 風格的 RTTI
如何使
isa<>
,dyn_cast<>
等可用於您的類別層次結構的客戶端。- LLVM 區塊頻率術語
提供關於
BlockFrequencyInfo
分析過程中使用的術語的資訊。- LLVM 分支權重元數據
提供關於分支預測資訊的資訊。
- 經常被誤解的 GEP 指令
回答關於 LLVM 最常被誤解的指令的一些非常常見的問題。
- Scudo 強化的分配器
一個實現安全強化的 malloc() 的函式庫。
- 記憶體模型鬆弛註解
目標定義的 LLVM 並行模型鬆弛。
- MemTagSanitizer
針對生產程式碼的安全性強化,旨在緩解與記憶體相關的漏洞。 基於 Armv8.5-A 記憶體標籤擴展。
- 依賴圖
各種依賴圖的設計描述,例如 DDG(資料依賴圖)。
- 推測載入強化
針對 Spectre v1 的推測載入強化緩解措施的描述。
- LLVM 中的分段堆疊
本文檔描述了分段堆疊以及它們在 LLVM 中的使用方式。
- LLVM 的可選豐富反組譯輸出
本文檔描述了可選的豐富反組譯輸出語法。
- LLVM 中的堆疊映射和修補點
LLVM 支援將指令地址映射到值的位置並允許修補程式碼。
- LLVM 中的協程
LLVM 對協程的支援。
- 指標驗證
指標驗證、其 LLVM IR 表示形式及其在後端支援的描述。
- YAML I/O
使用 LLVM YAML I/O 函式庫的參考指南。
- 收斂與一致性
在不可簡化的控制流程存在下,一致性分析的描述及其實現。