Skip to content

Commit d682118

Browse files
committed
Fix cache effect when used
1 parent 387fbe1 commit d682118

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

Tools/cases_generator/generate_cases.py

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -80,13 +80,18 @@ def write(
8080
)
8181

8282
# Write cache effect variable declarations
83+
cache_offset = 0
8384
for ceffect in self.cache_effects:
8485
if ceffect.name != "unused":
86+
# TODO: if name is 'descr' use PyObject *descr = read_obj(...)
8587
bits = ceffect.size * 16
86-
f.write(
87-
f"{indent} PyObject *{ceffect.name} = "
88-
f"read{bits}(next_instr + {self.cache_offset});\n"
89-
)
88+
f.write(f"{indent} uint{bits}_t {ceffect.name} = ")
89+
if ceffect.size == 1:
90+
f.write(f"*(next_instr + {cache_offset});\n")
91+
else:
92+
f.write(f"read_u{bits}(next_instr + {cache_offset});\n")
93+
cache_offset += ceffect.size
94+
assert cache_offset == self.cache_offset
9095

9196
# Write input stack effect variable declarations and initializations
9297
for i, seffect in enumerate(reversed(self.input_effects), 1):

0 commit comments

Comments
 (0)