8000 Mark unknown opcodes as deopting to themselves · python/cpython@e37182c · GitHub
[go: up one dir, main page]

Skip to content

Commit e37182c

Browse files
committed
Mark unknown opcodes as deopting to themselves
1 parent 643dd51 commit e37182c

File tree

2 files changed

+46
-0
lines changed

2 files changed

+46
-0
lines changed

Include/internal/pycore_opcode_metadata.h

Lines changed: 42 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Tools/cases_generator/opcode_metadata_generator.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,10 @@ def generate_deopt_table(analysis: Analysis, out: CWriter) -> None:
159159
deopts.append((inst.name, deopt))
160160
for name, deopt in sorted(deopts):
161161
out.emit(f"[{name}] = {deopt},\n")
162+
defined = set(analysis.opmap.values())
163+
for i in range(256):
164+
if i not in defined:
165+
out.emit(f"[{i}] = {i},\n")
162166
out.emit("};\n\n")
163167
out.emit("#endif // NEED_OPCODE_METADATA\n\n")
164168

0 commit comments

Comments
 (0)
0