fix: всем математические операции помечены как не имеющие доп поля
This commit is contained in:
@ -43,13 +43,13 @@ OpD = OpcodeDescription
|
|||||||
|
|
||||||
OPCODES = {
|
OPCODES = {
|
||||||
# block 1
|
# block 1
|
||||||
0x00: OpD(OpF(0), OpL.MATH, OpA.ADD),
|
0x00: OpD(OpF.UNEXPANDED, OpL.MATH, OpA.ADD),
|
||||||
0x10: OpD(OpF.QUICK, OpL.MATH, OpA.ADD),
|
0x10: OpD(OpF.QUICK, OpL.MATH, OpA.ADD),
|
||||||
0x01: OpD(OpF(0), OpL.MATH, OpA.SUB),
|
0x01: OpD(OpF.UNEXPANDED, OpL.MATH, OpA.SUB),
|
||||||
0x11: OpD(OpF.QUICK, OpL.MATH, OpA.SUB),
|
0x11: OpD(OpF.QUICK, OpL.MATH, OpA.SUB),
|
||||||
0x02: OpD(OpF(0), OpL.MATH, OpA.MUL),
|
0x02: OpD(OpF.UNEXPANDED, OpL.MATH, OpA.MUL),
|
||||||
0x12: OpD(OpF.QUICK, OpL.MATH, OpA.MUL),
|
0x12: OpD(OpF.QUICK, OpL.MATH, OpA.MUL),
|
||||||
0x03: OpD(OpF(0), OpL.MATH, OpA.DIV),
|
0x03: OpD(OpF.UNEXPANDED, OpL.MATH, OpA.DIV),
|
||||||
0x13: OpD(OpF.QUICK, OpL.MATH, OpA.DIV),
|
0x13: OpD(OpF.QUICK, OpL.MATH, OpA.DIV),
|
||||||
0x04: OpD(OpF.UNEXPANDED, OpL.MATH, OpA.AND),
|
0x04: OpD(OpF.UNEXPANDED, OpL.MATH, OpA.AND),
|
||||||
0x05: OpD(OpF.UNEXPANDED, OpL.MATH, OpA.OR),
|
0x05: OpD(OpF.UNEXPANDED, OpL.MATH, OpA.OR),
|
||||||
|
|||||||
@ -57,25 +57,25 @@ class VM:
|
|||||||
def __init_callbacks__(self):
|
def __init_callbacks__(self):
|
||||||
VM.instr_callbacks = {
|
VM.instr_callbacks = {
|
||||||
# ariphmetic
|
# ariphmetic
|
||||||
OpD(OpF(0), OpL.MATH, OpA.ADD):
|
OpD(OpF.UNEXPANDED, OpL.MATH, OpA.ADD):
|
||||||
self._math_callback_gen(lambda lhs, rhs: lhs + rhs),
|
self._math_callback_gen(lambda lhs, rhs: lhs + rhs),
|
||||||
|
|
||||||
OpD(OpF.QUICK, OpL.MATH, OpA.ADD):
|
OpD(OpF.QUICK, OpL.MATH, OpA.ADD):
|
||||||
self._math_quick_callback_gen(lambda lhs, rhs: lhs + rhs),
|
self._math_quick_callback_gen(lambda lhs, rhs: lhs + rhs),
|
||||||
|
|
||||||
OpD(OpF(0), OpL.MATH, OpA.SUB):
|
OpD(OpF.UNEXPANDED, OpL.MATH, OpA.SUB):
|
||||||
self._math_callback_gen(lambda lhs, rhs: lhs - rhs),
|
self._math_callback_gen(lambda lhs, rhs: lhs - rhs),
|
||||||
|
|
||||||
OpD(OpF.QUICK, OpL.MATH, OpA.SUB):
|
OpD(OpF.QUICK, OpL.MATH, OpA.SUB):
|
||||||
self._math_quick_callback_gen(lambda lhs, rhs: lhs - rhs),
|
self._math_quick_callback_gen(lambda lhs, rhs: lhs - rhs),
|
||||||
|
|
||||||
OpD(OpF(0), OpL.MATH, OpA.MUL):
|
OpD(OpF.UNEXPANDED, OpL.MATH, OpA.MUL):
|
||||||
self._math_callback_gen(lambda lhs, rhs: lhs * rhs),
|
self._math_callback_gen(lambda lhs, rhs: lhs * rhs),
|
||||||
|
|
||||||
OpD(OpF.QUICK, OpL.MATH, OpA.MUL):
|
OpD(OpF.QUICK, OpL.MATH, OpA.MUL):
|
||||||
self._math_quick_callback_gen(lambda lhs, rhs: lhs * rhs),
|
self._math_quick_callback_gen(lambda lhs, rhs: lhs * rhs),
|
||||||
|
|
||||||
OpD(OpF(0), OpL.MATH, OpA.DIV):
|
OpD(OpF.UNEXPANDED, OpL.MATH, OpA.DIV):
|
||||||
self._math_callback_gen(lambda lhs, rhs: lhs // rhs),
|
self._math_callback_gen(lambda lhs, rhs: lhs // rhs),
|
||||||
|
|
||||||
OpD(OpF.QUICK, OpL.MATH, OpA.DIV):
|
OpD(OpF.QUICK, OpL.MATH, OpA.DIV):
|
||||||
|
|||||||
Reference in New Issue
Block a user