Jvm Jasmin的烟尘版本无法组装Jasmin程序集文件
我有来自Jasmin SourceForge的Jasmin 2.4版本和来自sable.mcgill.ca烟尘项目的Jasmin 2.4版本,标记为jasminclasses,我需要的烟尘版本似乎工作不正常 我制作了一个简单的编译器,它最初编译为jasminjvmassembly,然后使用Jasmin组装成JVM类文件。我曾经使用来自Jasmin的SourceForge站点的正常版本的Jasmin,它工作得非常好;一切都已正确编译并运行。现在,我已经开始使用烟尘框架进行优化,只要我不尝试将优化后的代码转换回类文件,所有这些都非常有效 因为我现在使用的是烟尘,所以我必须使用烟尘版本的Jasmin,它支持烟尘使用的JasminOutputStream。烟尘版本的Jasmin看起来似乎仍然能够以老式的方式处理Jasmin文件,读取.j文件而不是获取输入流,但是当我尝试在优化之前进行初始组装时,烟尘版本失败了 如果我这样做Jvm Jasmin的烟尘版本无法组装Jasmin程序集文件,jvm,jasmin,soot,Jvm,Jasmin,Soot,我有来自Jasmin SourceForge的Jasmin 2.4版本和来自sable.mcgill.ca烟尘项目的Jasmin 2.4版本,标记为jasminclasses,我需要的烟尘版本似乎工作不正常 我制作了一个简单的编译器,它最初编译为jasminjvmassembly,然后使用Jasmin组装成JVM类文件。我曾经使用来自Jasmin的SourceForge站点的正常版本的Jasmin,它工作得非常好;一切都已正确编译并运行。现在,我已经开始使用烟尘框架进行优化,只要我不尝试将优化后
java -cp jasmin.jar jasmin.Main MyClass.j
我得到生成的输出:MyClass.class如预期的那样
如果我这样做的话,JasminClass就是Jasmin的烟尘版本
java -cp jasminclasses-2.4.0.jar jasmin.Main MyClass.j
我得到输出
MyClass.j:5: Warning - Syntax error.
.field public n
^
MyClass.j:5: Error - Couldn't repair and continue parse.
.field public n
^
MyClass.j: Found 2 errors`
第五行刚刚结束
.外地公共图书馆
没有什么不正确的地方,如上所示,它可以与Jasmin的正常版本一起编译
为了完整起见,这里有更多关于这一点的代码:
.source MyClass.j
.class public MyClass
.super AnotherClass
.field public n I
.method public <init>()V
aload_0
invokenonvirtual AnotherClass/<init>()V
return
.end method
那里的一切都很好,和普通的茉莉花搭配得很好
有人知道Jasmin的烟尘版本是否需要不同的语法吗?就像大多数关于烟灰和茉莉花的东西一样,网络上的内容一开始就不多,更不用说我在搜索什么了,所以我的谷歌搜索结果也不多
提前感谢您提供的任何帮助,我在这里真的很沮丧。我的下一步是调试烟尘的Jasmin软件包,看看它在做什么,为什么失败,但我希望我现在不必为了这个而走那么远