如何使用ANTLR和C目标生成LLVM IR

如何使用ANTLR和C目标生成LLVM IR,llvm,antlr3,Llvm,Antlr3,我目前正在尝试用ANTLR3生成LLVM IR。 但是问题是,我需要C目标(C++是更好的,但现在还没有工作,或者是?),但是从C我不能调用LLVM C++ API来构建IR。p> Terence Parr的教程使用Java和StringTemplate库。但据我所知,StringTemplate库不适用于C 有人对如何做到这一点有好的想法吗?:) Thx在LLVM常见问题解答中有一个非常好的条目,讨论您想要做什么: 它指向llvm-c,它是一个与llvm的c绑定,允许直接从c生成IR,并集成到

我目前正在尝试用ANTLR3生成LLVM IR。 但是问题是,我需要C目标(C++是更好的,但现在还没有工作,或者是?),但是从C我不能调用LLVM C++ API来构建IR。p> Terence Parr的教程使用Java和StringTemplate库。但据我所知,StringTemplate库不适用于C

有人对如何做到这一点有好的想法吗?:)


Thx

在LLVM常见问题解答中有一个非常好的条目,讨论您想要做什么: 它指向llvm-c,它是一个与llvm的c绑定,允许直接从c生成IR,并集成到llvm,因为至少llvm-2.6


特伦斯以AtLR java和StrimDe模板为例,以LVVM程序集为文本生成文本(生成文本实际上是C++模板)。如果用C++编译器编译ANTLR3*C文件,则调用LLVM C++是可能的。在AtLR3的示例包中有一个例子。我最近发布了一个C++目标。检查它是否有用。