mirror of
https://github.com/FranzHaidnor/haidnorJVM.git
synced 2026-03-14 14:13:49 +08:00
update README.md
This commit is contained in:
@@ -529,10 +529,10 @@ public abstract class InstructionFactory {
|
||||
return new RET(codeStream);
|
||||
}
|
||||
case Const.TABLESWITCH -> {
|
||||
throw new Error("Not support JavaVM opcode TABLESWITCH");
|
||||
return new TABLESWITCH(codeStream); // TODO
|
||||
}
|
||||
case Const.LOOKUPSWITCH -> {
|
||||
throw new Error("Not support JavaVM opcode LOOKUPSWITCH");
|
||||
return new LOOKUPSWITCH(codeStream); // TODO
|
||||
}
|
||||
case Const.IRETURN -> {
|
||||
return new IRETURN(codeStream);
|
||||
@@ -577,7 +577,7 @@ public abstract class InstructionFactory {
|
||||
return new INVOKEINTERFACE(codeStream);
|
||||
}
|
||||
case Const.INVOKEDYNAMIC -> {
|
||||
throw new Error("Not support JavaVM opcode INVOKEDYNAMIC");
|
||||
return new INVOKEDYNAMIC(codeStream); // TODO
|
||||
}
|
||||
case Const.NEW -> {
|
||||
return new NEW(codeStream);
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
package haidnor.jvm.instruction.control;
|
||||
|
||||
import haidnor.jvm.instruction.Instruction;
|
||||
import haidnor.jvm.runtime.Frame;
|
||||
import haidnor.jvm.util.CodeStream;
|
||||
|
||||
public class LOOKUPSWITCH extends Instruction {
|
||||
|
||||
public LOOKUPSWITCH(CodeStream codeStream) {
|
||||
super(codeStream);
|
||||
throw new UnsupportedOperationException("LOOKUPSWITCH");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame) {
|
||||
throw new UnsupportedOperationException("LOOKUPSWITCH");
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
package haidnor.jvm.instruction.control;
|
||||
|
||||
import haidnor.jvm.instruction.Instruction;
|
||||
import haidnor.jvm.runtime.Frame;
|
||||
import haidnor.jvm.util.CodeStream;
|
||||
|
||||
public class TABLESWITCH extends Instruction {
|
||||
|
||||
public TABLESWITCH(CodeStream codeStream) {
|
||||
super(codeStream);
|
||||
throw new UnsupportedOperationException("TABLESWITCH");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame) {
|
||||
throw new UnsupportedOperationException("TABLESWITCH");
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package haidnor.jvm.instruction.references;
|
||||
|
||||
import haidnor.jvm.instruction.Instruction;
|
||||
import haidnor.jvm.runtime.Frame;
|
||||
import haidnor.jvm.util.CodeStream;
|
||||
import lombok.SneakyThrows;
|
||||
|
||||
public class INVOKEDYNAMIC extends Instruction {
|
||||
|
||||
public INVOKEDYNAMIC(CodeStream codeStream) {
|
||||
super(codeStream);
|
||||
throw new UnsupportedOperationException("INVOKEDYNAMIC");
|
||||
}
|
||||
|
||||
@Override
|
||||
@SneakyThrows
|
||||
public void execute(Frame frame) {
|
||||
throw new UnsupportedOperationException("INVOKEDYNAMIC");
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user