參考¶
LLVM 和 API 參考文件。
API 參考¶
- Doxygen 生成的文件
(類別)
- 如何使用屬性
回答有關新屬性基礎架構的一些問題。
LLVM 參考¶
命令列工具¶
- LLVM 命令指南
LLVM 命令列工具的參考手冊(LLVM 工具的「man」頁面)。
- LLVM bugpoint 工具:設計與使用
自動錯誤查找器和測試案例簡化器的描述和使用資訊。
- 使用 -opt-bisect-limit 除錯最佳化錯誤
用於除錯最佳化導致的錯誤的命令列選項。
- 符號化標記格式
llvm-symbolizer
接受的日誌符號化標記參考。- Microsoft PDB 檔案格式
Microsoft PDB(程式資料庫)檔案格式的詳細說明。
垃圾回收¶
- 使用 LLVM 進行垃圾回收
原始碼語言編譯器在編譯 GC 程式時應使用的介面。
- LLVM 中的垃圾回收安全點
這描述了一組用於垃圾回收支援的實驗性擴充功能。
LibFuzzer¶
- libFuzzer – 一個用於覆蓋引導模糊測試的函式庫。
一個用於編寫程序內引導模糊器的函式庫。
- 模糊測試 LLVM 函式庫和工具
有關編寫和使用模糊器在 LLVM 中查找錯誤的資訊。
LLVM IR¶
- LLVM 語言參考手冊
定義 LLVM 中間表示法和不同節點的組譯形式。
- InAlloca 屬性的設計與使用
inalloca
參數屬性的描述。- LLVM 位元碼檔案格式
這描述了 LLVM「bc」檔案使用的檔案格式和編碼。
- 機器 IR (MIR) 格式參考手冊
MIR 序列化格式的參考手冊,用於測試 LLVM 的程式碼生成階段。
- 全域指令選擇
這描述了原型指令選擇替換,GlobalISel。
- 收斂運算語義
convergent
運算語義和相關內建函式的描述。
測試與除錯¶
- LLVM 測試基礎架構指南
使用 LLVM 測試基礎架構的參考手冊。
- 測試套件指南
說明如何編譯和執行測試套件基準測試。
- GWP-ASan
一種設計用於生產環境的抽樣堆積記憶體錯誤檢測工具包。
XRay¶
- XRay 檢測
關於如何在 LLVM 中使用 XRay 的高階文件。
- 使用 XRay 進行除錯
使用 XRay 對應用程式進行除錯的範例。
其他主題¶
- 錯誤對映圖和隱式檢查
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 程式庫的參考指南。
- 收斂性和一致性
在存在不可簡化控制流程的情況下對一致性分析及其實現的描述。