gpt4 book ai didi

compiler-construction - 破解 Open JDK - 发出 LLVM 汇编程序而不是 Java 字节码

转载 作者:行者123 更新时间:2023-11-30 09:48:09 24 4
gpt4 key购买 nike

我有机会在大学工作,帮助从 OpenJDK 破解 javac。目标是阅读自定义源代码(针对“我​​们的”编程语言结合 antlr)而不是写出 Java 字节码——编译器应该写出 LLVM 汇编代码。这将是我的任务,但是该项目是如此之大,以至于我不知道从哪里或如何开始了解那里发生的事情。我被告知尝试调试代码并逐步完成它,但我想知道是否有任何好的文档在野外给我一个短暂的突破以了解哪些部分是最重要的部分。

最佳答案

你有“myprogram.myprogrlang”到“myprogram.llvm”。

我不认为有必要使用/hack javac。我认为你想使用 Java/openjdk 的编译工具,但我认为这只会让你的任务更加困难,而不是帮助你。

我的建议是学习 antlr,了解它是如何用您的编程语言解析程序的,如何生成 AST,然后将该 AST 数据转换为 LLVM 字节码或汇编程序。

在这种情况下你不需要 java。

所以:

[1] 为您的编程语言学习 ANTLR 语法/规则

[2] 学习 LLVM 字节码/汇编器

[3] 了解如何将 ANTLR 数据输出转换为 LLVM 数据输入

关于compiler-construction - 破解 Open JDK - 发出 LLVM 汇编程序而不是 Java 字节码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6389091/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com