fix: прокинул обязательный аргумент self в колбеки

This commit is contained in:
ElectronixTM
2025-03-29 20:51:33 +03:00
parent 0c95d4df91
commit 2ba51d841d

View File

@ -156,21 +156,24 @@ class VM:
if opdesc.layout == OpL.MATH: if opdesc.layout == OpL.MATH:
assert len(args) == 4 assert len(args) == 4
_, r3, r1, r2_or_i8 = args _, r3, r1, r2_or_i8 = args
# поскольку этот колбэк сгенерирован,
# ему необходимо в явном виде указывать
# аргумент self
self.instr_callbacks[opdesc]( self.instr_callbacks[opdesc](
r3, r1, r2_or_i8 self, r3, r1, r2_or_i8
) )
if opdesc.layout == OpL.MEM: if opdesc.layout == OpL.MEM:
if OpF.QUICK in opdesc.flags: if OpF.QUICK in opdesc.flags:
assert len(args) == 4 assert len(args) == 4
_, r3, r1, i8 = args _, r3, r1, i8 = args
self.instr_callbacks[opdesc]( self.instr_callbacks[opdesc](
r3, r1, i8 self, r3, r1, i8
) )
else: else:
assert len(args) == 5 assert len(args) == 5
_, r3, r1, _, disp = args _, r3, r1, _, disp = args
self.instr_callbacks[opdesc]( self.instr_callbacks[opdesc](
r3, r1, disp self, r3, r1, disp
) )
if opdesc.layout == OpL.BRANCH: if opdesc.layout == OpL.BRANCH: