我正在使用ANTLR和LLVM开发编译器。我已经使用ANTLR 4的Eclipse IDE实现了一个词法分析器和一个解析器。我想用LLVM实现一个语义分析器和一个代码生成器。对于这个,我想知道如何对两者积分。我在网上看到的大多数项目都使用ANTLR进行语义分析(带有访问者和步行者函数),而LLVM仅用于代码生成。我想知道如何将ANTLR解析器输出作为输入传递给LLVM语义分析器。说明这一点的在线示例链接将非常有用。
虽然您提到了ANTLR4,但这里有一个使用ANTLR3为C子集生成LLVM IR的示例https://theantlrguy.atlassian.net/wiki/spaces/ANTLR3/pages/2687062/LLVM它非常有趣,并提供了一个如何使用这两个工具一起创建一个工作编译器的示例。