我有这个jasmin程序集,这相当于我正在编写的字节码重写器生成的JVM程序集的简化。它在运行时崩溃,但如果我删除了sipush
和第一个商店,则会有效。
.method public simple()V
.limit stack 4
sipush 12345
istore_1
getstatic java/lang/System/out Ljava/io/PrintStream;
sipush 12345
ldc 12345
iadd
invokevirtual java/io/PrintStream/println(I)V
return
.end method
JVM是否要求加载使用每个商店?
答案 0 :(得分:1)
istore_1
将值存储到局部变量#1,但您的方法没有本地变量。
如果添加以下行,该方法将生效:
.limit locals 2