Make specific most things, so minimize jasmin diff so I can see the result of the injection easier..
This commit is contained in:
@@ -104,4 +104,22 @@ public class ALoad extends Instruction implements LVTInstruction, WideInstructio
|
||||
index = idx;
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Instruction makeSpecific()
|
||||
{
|
||||
switch (index)
|
||||
{
|
||||
case 0:
|
||||
return new ALoad_0(this.getInstructions());
|
||||
case 1:
|
||||
return new ALoad_1(this.getInstructions());
|
||||
case 2:
|
||||
return new ALoad_2(this.getInstructions());
|
||||
case 3:
|
||||
return new ALoad_3(this.getInstructions());
|
||||
default:
|
||||
return this;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,6 +20,11 @@ public class ALoad_0 extends Instruction implements LVTInstruction
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public ALoad_0(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.ALOAD_0, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -20,6 +20,11 @@ public class ALoad_1 extends Instruction implements LVTInstruction
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public ALoad_1(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.ALOAD_1, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -20,6 +20,11 @@ public class ALoad_2 extends Instruction implements LVTInstruction
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public ALoad_2(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.ALOAD_2, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -20,6 +20,11 @@ public class ALoad_3 extends Instruction implements LVTInstruction
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public ALoad_3(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.ALOAD_3, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -86,4 +86,22 @@ public class AStore extends Instruction implements LVTInstruction, WideInstructi
|
||||
index = idx;
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Instruction makeSpecific()
|
||||
{
|
||||
switch (index)
|
||||
{
|
||||
case 0:
|
||||
return new AStore_0(this.getInstructions());
|
||||
case 1:
|
||||
return new AStore_1(this.getInstructions());
|
||||
case 2:
|
||||
return new AStore_2(this.getInstructions());
|
||||
case 3:
|
||||
return new AStore_3(this.getInstructions());
|
||||
default:
|
||||
return this;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11,15 +11,19 @@ import net.runelite.deob.execution.StackContext;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class AStore_0 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public AStore_0(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public AStore_0(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public AStore_0(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.ASTORE_0, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -11,15 +11,19 @@ import net.runelite.deob.execution.StackContext;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class AStore_1 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public AStore_1(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public AStore_1(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public AStore_1(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.ASTORE_1, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -11,15 +11,19 @@ import net.runelite.deob.execution.StackContext;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class AStore_2 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public AStore_2(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public AStore_2(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public AStore_2(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.ASTORE_2, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -11,15 +11,19 @@ import net.runelite.deob.execution.StackContext;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class AStore_3 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public AStore_3(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public AStore_3(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public AStore_3(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.ASTORE_3, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -106,4 +106,22 @@ public class DLoad extends Instruction implements LVTInstruction, WideInstructio
|
||||
index = idx;
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Instruction makeSpecific()
|
||||
{
|
||||
switch (index)
|
||||
{
|
||||
case 0:
|
||||
return new DLoad_0(this.getInstructions());
|
||||
case 1:
|
||||
return new DLoad_1(this.getInstructions());
|
||||
case 2:
|
||||
return new DLoad_2(this.getInstructions());
|
||||
case 3:
|
||||
return new DLoad_3(this.getInstructions());
|
||||
default:
|
||||
return this;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,15 +12,19 @@ import net.runelite.deob.execution.Type;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class DLoad_0 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public DLoad_0(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public DLoad_0(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public DLoad_0(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.DLOAD_0, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -12,15 +12,19 @@ import net.runelite.deob.execution.Type;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class DLoad_1 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public DLoad_1(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public DLoad_1(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public DLoad_1(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.DLOAD_1, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -12,15 +12,19 @@ import net.runelite.deob.execution.Type;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class DLoad_2 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public DLoad_2(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public DLoad_2(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public DLoad_2(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.DLOAD_2, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -12,15 +12,19 @@ import net.runelite.deob.execution.Type;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class DLoad_3 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public DLoad_3(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public DLoad_3(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public DLoad_3(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.DLOAD_3, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -86,4 +86,22 @@ public class DStore extends Instruction implements LVTInstruction, WideInstructi
|
||||
index = idx;
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Instruction makeSpecific()
|
||||
{
|
||||
switch (index)
|
||||
{
|
||||
case 0:
|
||||
return new DStore_0(this.getInstructions());
|
||||
case 1:
|
||||
return new DStore_1(this.getInstructions());
|
||||
case 2:
|
||||
return new DStore_2(this.getInstructions());
|
||||
case 3:
|
||||
return new DStore_3(this.getInstructions());
|
||||
default:
|
||||
return this;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,11 +15,16 @@ import java.io.IOException;
|
||||
|
||||
public class DStore_0 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public DStore_0(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public DStore_0(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public DStore_0(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.DST0RE_0, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -11,15 +11,19 @@ import net.runelite.deob.execution.StackContext;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class DStore_1 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public DStore_1(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public DStore_1(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public DStore_1(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.DSTORE_1, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -15,11 +15,16 @@ import java.io.IOException;
|
||||
|
||||
public class DStore_2 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public DStore_2(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public DStore_2(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public DStore_2(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.DSTORE_2, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -11,15 +11,18 @@ import net.runelite.deob.execution.StackContext;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class DStore_3 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public DStore_3(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public DStore_3(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public DStore_3(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.DSTORE_3, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -106,4 +106,22 @@ public class FLoad extends Instruction implements LVTInstruction, WideInstructio
|
||||
index = idx;
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Instruction makeSpecific()
|
||||
{
|
||||
switch (index)
|
||||
{
|
||||
case 0:
|
||||
return new FLoad_0(this.getInstructions());
|
||||
case 1:
|
||||
return new FLoad_1(this.getInstructions());
|
||||
case 2:
|
||||
return new FLoad_2(this.getInstructions());
|
||||
case 3:
|
||||
return new FLoad_3(this.getInstructions());
|
||||
default:
|
||||
return this;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,15 +12,19 @@ import net.runelite.deob.execution.Type;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class FLoad_0 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public FLoad_0(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public FLoad_0(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public FLoad_0(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.FLOAD_0, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -12,15 +12,19 @@ import net.runelite.deob.execution.Type;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class FLoad_1 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public FLoad_1(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public FLoad_1(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public FLoad_1(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.FLOAD_1, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -12,15 +12,19 @@ import net.runelite.deob.execution.Type;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class FLoad_2 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public FLoad_2(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public FLoad_2(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public FLoad_2(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.FLOAD_2, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -12,15 +12,19 @@ import net.runelite.deob.execution.Type;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class FLoad_3 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public FLoad_3(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public FLoad_3(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public FLoad_3(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.FLOAD_3, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -86,4 +86,22 @@ public class FStore extends Instruction implements LVTInstruction, WideInstructi
|
||||
index = idx;
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Instruction makeSpecific()
|
||||
{
|
||||
switch (index)
|
||||
{
|
||||
case 0:
|
||||
return new FStore_0(this.getInstructions());
|
||||
case 1:
|
||||
return new FStore_1(this.getInstructions());
|
||||
case 2:
|
||||
return new FStore_2(this.getInstructions());
|
||||
case 3:
|
||||
return new FStore_3(this.getInstructions());
|
||||
default:
|
||||
return this;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11,15 +11,19 @@ import net.runelite.deob.execution.StackContext;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class FStore_0 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public FStore_0(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public FStore_0(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public FStore_0(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.FSTORE_0, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -11,15 +11,19 @@ import net.runelite.deob.execution.StackContext;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class FStore_1 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public FStore_1(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public FStore_1(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public FStore_1(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.FSTORE_1, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -11,15 +11,19 @@ import net.runelite.deob.execution.StackContext;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class FStore_2 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public FStore_2(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public FStore_2(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public FStore_2(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.FSTORE_2, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -11,15 +11,19 @@ import net.runelite.deob.execution.StackContext;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class FStore_3 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public FStore_3(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public FStore_3(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public FStore_3(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.FSTORE_3, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -9,7 +9,6 @@ import net.runelite.deob.execution.Frame;
|
||||
import net.runelite.deob.execution.InstructionContext;
|
||||
import net.runelite.deob.execution.Stack;
|
||||
import net.runelite.deob.execution.StackContext;
|
||||
import net.runelite.deob.execution.Type;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
@@ -106,4 +105,23 @@ public class ILoad extends Instruction implements LVTInstruction, WideInstructio
|
||||
index = idx;
|
||||
return this;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Instruction makeSpecific()
|
||||
{
|
||||
switch (index)
|
||||
{
|
||||
case 0:
|
||||
return new ILoad_0(this.getInstructions());
|
||||
case 1:
|
||||
return new ILoad_1(this.getInstructions());
|
||||
case 2:
|
||||
return new ILoad_2(this.getInstructions());
|
||||
case 3:
|
||||
return new ILoad_3(this.getInstructions());
|
||||
default:
|
||||
return this;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,19 +8,22 @@ import net.runelite.deob.execution.Frame;
|
||||
import net.runelite.deob.execution.InstructionContext;
|
||||
import net.runelite.deob.execution.Stack;
|
||||
import net.runelite.deob.execution.StackContext;
|
||||
import net.runelite.deob.execution.Type;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class ILoad_0 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public ILoad_0(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public ILoad_0(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public ILoad_0(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.ILOAD_0, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -8,19 +8,22 @@ import net.runelite.deob.execution.Frame;
|
||||
import net.runelite.deob.execution.InstructionContext;
|
||||
import net.runelite.deob.execution.Stack;
|
||||
import net.runelite.deob.execution.StackContext;
|
||||
import net.runelite.deob.execution.Type;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class ILoad_1 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public ILoad_1(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public ILoad_1(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public ILoad_1(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.ILOAD_1, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -8,19 +8,22 @@ import net.runelite.deob.execution.Frame;
|
||||
import net.runelite.deob.execution.InstructionContext;
|
||||
import net.runelite.deob.execution.Stack;
|
||||
import net.runelite.deob.execution.StackContext;
|
||||
import net.runelite.deob.execution.Type;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class ILoad_2 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public ILoad_2(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public ILoad_2(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public ILoad_2(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.ILOAD_2, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -8,19 +8,22 @@ import net.runelite.deob.execution.Frame;
|
||||
import net.runelite.deob.execution.InstructionContext;
|
||||
import net.runelite.deob.execution.Stack;
|
||||
import net.runelite.deob.execution.StackContext;
|
||||
import net.runelite.deob.execution.Type;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class ILoad_3 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public ILoad_3(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public ILoad_3(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public ILoad_3(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.ILOAD_3, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -88,4 +88,22 @@ public class IStore extends Instruction implements LVTInstruction, WideInstructi
|
||||
index = idx;
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Instruction makeSpecific()
|
||||
{
|
||||
switch (index)
|
||||
{
|
||||
case 0:
|
||||
return new IStore_0(this.getInstructions());
|
||||
case 1:
|
||||
return new IStore_1(this.getInstructions());
|
||||
case 2:
|
||||
return new IStore_2(this.getInstructions());
|
||||
case 3:
|
||||
return new IStore_3(this.getInstructions());
|
||||
default:
|
||||
return this;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,11 +8,9 @@ import net.runelite.deob.execution.Frame;
|
||||
import net.runelite.deob.execution.InstructionContext;
|
||||
import net.runelite.deob.execution.Stack;
|
||||
import net.runelite.deob.execution.StackContext;
|
||||
import net.runelite.deob.execution.Type;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class IStore_0 extends Instruction implements LVTInstruction
|
||||
{
|
||||
|
||||
@@ -8,11 +8,9 @@ import net.runelite.deob.execution.Frame;
|
||||
import net.runelite.deob.execution.InstructionContext;
|
||||
import net.runelite.deob.execution.Stack;
|
||||
import net.runelite.deob.execution.StackContext;
|
||||
import net.runelite.deob.execution.Type;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class IStore_1 extends Instruction implements LVTInstruction
|
||||
{
|
||||
|
||||
@@ -8,11 +8,9 @@ import net.runelite.deob.execution.Frame;
|
||||
import net.runelite.deob.execution.InstructionContext;
|
||||
import net.runelite.deob.execution.Stack;
|
||||
import net.runelite.deob.execution.StackContext;
|
||||
import net.runelite.deob.execution.Type;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class IStore_2 extends Instruction implements LVTInstruction
|
||||
{
|
||||
|
||||
@@ -8,19 +8,22 @@ import net.runelite.deob.execution.Frame;
|
||||
import net.runelite.deob.execution.InstructionContext;
|
||||
import net.runelite.deob.execution.Stack;
|
||||
import net.runelite.deob.execution.StackContext;
|
||||
import net.runelite.deob.execution.Type;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class IStore_3 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public IStore_3(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public IStore_3(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public IStore_3(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.ISTORE_3, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -8,18 +8,21 @@ import net.runelite.deob.execution.Frame;
|
||||
import net.runelite.deob.execution.InstructionContext;
|
||||
import net.runelite.deob.execution.Stack;
|
||||
import net.runelite.deob.execution.StackContext;
|
||||
import net.runelite.deob.pool.PoolEntry;
|
||||
|
||||
import java.io.IOException;
|
||||
import net.runelite.deob.execution.Value;
|
||||
import net.runelite.deob.pool.PoolEntry;
|
||||
|
||||
public class LConst_0 extends Instruction implements PushConstantInstruction
|
||||
{
|
||||
public LConst_0(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public LConst_0(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public LConst_0(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.LCONST_0, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -8,10 +8,8 @@ import net.runelite.deob.execution.Frame;
|
||||
import net.runelite.deob.execution.InstructionContext;
|
||||
import net.runelite.deob.execution.Stack;
|
||||
import net.runelite.deob.execution.StackContext;
|
||||
import net.runelite.deob.pool.PoolEntry;
|
||||
|
||||
import java.io.IOException;
|
||||
import net.runelite.deob.execution.Value;
|
||||
import net.runelite.deob.pool.PoolEntry;
|
||||
|
||||
public class LConst_1 extends Instruction implements PushConstantInstruction
|
||||
{
|
||||
|
||||
@@ -96,4 +96,29 @@ public class LDC2_W extends Instruction implements PushConstantInstruction
|
||||
{
|
||||
return (long) value.getObject();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Instruction makeSpecific()
|
||||
{
|
||||
switch (value.getType())
|
||||
{
|
||||
case LONG:
|
||||
{
|
||||
long l = (long) value.getObject();
|
||||
|
||||
if (l < Integer.MIN_VALUE || l > Integer.MAX_VALUE)
|
||||
break;
|
||||
|
||||
switch ((int) l)
|
||||
{
|
||||
case 0:
|
||||
return new LConst_0(this.getInstructions());
|
||||
case 1:
|
||||
return new LConst_1(this.getInstructions());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return super.makeSpecific();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -106,4 +106,22 @@ public class LLoad extends Instruction implements LVTInstruction, WideInstructio
|
||||
index = idx;
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Instruction makeSpecific()
|
||||
{
|
||||
switch (index)
|
||||
{
|
||||
case 0:
|
||||
return new LLoad_0(this.getInstructions());
|
||||
case 1:
|
||||
return new LLoad_1(this.getInstructions());
|
||||
case 2:
|
||||
return new LLoad_2(this.getInstructions());
|
||||
case 3:
|
||||
return new LLoad_3(this.getInstructions());
|
||||
default:
|
||||
return this;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,15 +12,19 @@ import net.runelite.deob.execution.Type;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class LLoad_0 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public LLoad_0(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public LLoad_0(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public LLoad_0(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.LLOAD_0, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -21,6 +21,11 @@ public class LLoad_1 extends Instruction implements LVTInstruction
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public LLoad_1(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.LLOAD_1, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -21,6 +21,11 @@ public class LLoad_2 extends Instruction implements LVTInstruction
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public LLoad_2(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.LLOAD_2, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -21,6 +21,11 @@ public class LLoad_3 extends Instruction implements LVTInstruction
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public LLoad_3(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.LLOAD_3, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -88,4 +88,22 @@ public class LStore extends Instruction implements LVTInstruction, WideInstructi
|
||||
index = idx;
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Instruction makeSpecific()
|
||||
{
|
||||
switch (index)
|
||||
{
|
||||
case 0:
|
||||
return new LStore_0(this.getInstructions());
|
||||
case 1:
|
||||
return new LStore_1(this.getInstructions());
|
||||
case 2:
|
||||
return new LStore_2(this.getInstructions());
|
||||
case 3:
|
||||
return new LStore_3(this.getInstructions());
|
||||
default:
|
||||
return this;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,7 +12,6 @@ import net.runelite.deob.execution.Type;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class LStore_0 extends Instruction implements LVTInstruction
|
||||
{
|
||||
|
||||
@@ -12,15 +12,19 @@ import net.runelite.deob.execution.Type;
|
||||
import net.runelite.deob.execution.VariableContext;
|
||||
import net.runelite.deob.execution.Variables;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class LStore_1 extends Instruction implements LVTInstruction
|
||||
{
|
||||
public LStore_1(Instructions instructions, InstructionType type, int pc) throws IOException
|
||||
public LStore_1(Instructions instructions, InstructionType type, int pc)
|
||||
{
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public LStore_1(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.LSTORE_1, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -21,6 +21,11 @@ public class LStore_2 extends Instruction implements LVTInstruction
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public LStore_2(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.LSTORE_2, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
@@ -21,6 +21,11 @@ public class LStore_3 extends Instruction implements LVTInstruction
|
||||
super(instructions, type, pc);
|
||||
}
|
||||
|
||||
public LStore_3(Instructions instructions)
|
||||
{
|
||||
super(instructions, InstructionType.LSTORE_3, -1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(Frame frame)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user