LLVM項目是一套工具的集合,它包括模塊化、可複用的編譯器及一些列工具鏈技術。
LLVM最開始是Low Level Virtual Machine的簡稱,但如今它並非傳統意義上的虛擬機。因此LLVM這個名字並不是Low Level Virtual Machine的縮寫,而是一個單詞。架構
LLVM項目開始於伊利諾伊大學的一個研究項目,這個研究項目的目標是創造一個現代化、基於SSA編譯策略同時支持靜態編譯和動態編譯的編譯器。此後LLVM項目成爲一個包含多個子項目的大項目。模塊化
LLVM主要的子項目包括:工具
兼容多種CPU的機器碼生成庫。調試
基於LLVM的一個C/C++/Objective C編譯器,它的編譯速度是GCC的三倍。get
基於LLVM的調試器,相似GDB編譯器