我完全知道这里已经问过一个类似的问题:从 Java 生成 LLVM 代码
问题是,那是在 2012 年......我查看了解决方案,发现提到的大多数项目都被放弃了,或者至少非常不活跃。那么,作为最习惯使用 Java 的人,我使用 LLVM 的选择是什么(创建一种玩具语言,而不是使用 clang 或其他任何东西)?
为了最终回答这个问题,Java C++ Presets 是一个有用且大部分是最新的选项:https : //github.com/bytedeco/javacpp-presets/tree/master/llvm
小智 1
最近我遇到了同样的问题,因为我在 Java/Scala 中使用 ANTLR 来定义我的词法分析器和解析器,并使用 LLVM 通过其 IR 生成实际的机器代码。在尝试将基于 JVM 的前端绑定到 LLVM IR 和后端时,我实际上正在尝试使用 GraalVM https://www.graalvm.org/ ,因为它提供了一种跨语言交互的无缝方式,包括 LLVM 位码,使用其多语言。
这里有一些参考:
您应该能够直接从 Java/Scala 代码访问 LLVM IR,反之亦然,您可以使用 Polyglot 调用从 LLVM/C++ 代码访问基于 JVM 的语言的 AST。
| 归档时间: |
|
| 查看次数: |
3533 次 |
| 最近记录: |