2010-02-02 106 views
2

當前正在嘗試使用ANTLR3生成LLVM IR。 但問題是,我需要C目標(C++會更好,但還沒有工作,或者它?),但從C我不能調用LLVM C++ API來構建IR。如何使用ANTLR和C目標生成LLVM IR

來自Terence Parr的教程使用Java和StringTemplate庫。但正如我所知StringTemplate lib ist不適用於C.

有沒有人有一些好主意,這可以做到這一點? :)

THX

+0

我最近發佈了一個ANTLR的C++目標。檢查它是否有用。 http://www.antlr.org/wiki/pages/viewpage.action?pageId=29130826 – Gokul 2012-02-16 13:05:02

回答

2

沒有在LLVM常見問題一個很好的入門,討論你想要做什麼: http://llvm.org/docs/FAQ.html#langirgen 它指向LLVM-C,這是一個C結合LLVM,從而產生IR直接從C,並由於在租賃LLVM-2.6

該方法特倫斯發生在其例如用ANTLR-java和stringtemplates是生成LLVM組件,文本集成到LLVM(以及生成文本是真的什麼stringtemplates爲約)。

+1

如果使用C++編譯器編譯ANTLR3 * .c文件,可以調用LLVM C++。 ANTLR3的示例包中有一個例子。 – SteffenG 2010-02-03 16:59:17