GH-111485: Factor out tier 2 code generation from the rest of the interpreter code generator (GH-112968)

This commit is contained in:
Mark Shannon 2023-12-12 12:12:17 +00:00 committed by GitHub
parent c454e934d3
commit 0c55f27060
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
14 changed files with 1391 additions and 974 deletions

View file

@ -1,6 +1,6 @@
// This file is generated by Tools/cases_generator/tier1_generator.py
// from:
// ['./Python/bytecodes.c']
// Python/bytecodes.c
// Do not edit!
#ifdef TIER_TWO
@ -725,6 +725,7 @@
frame->instr_ptr = next_instr;
next_instr += 1;
INSTRUCTION_STATS(CACHE);
TIER_ONE_ONLY
assert(0 && "Executing a cache.");
Py_UNREACHABLE();
}
@ -2364,6 +2365,7 @@
frame->instr_ptr = next_instr;
next_instr += 1;
INSTRUCTION_STATS(EXTENDED_ARG);
TIER_ONE_ONLY
assert(oparg);
opcode = next_instr->op.code;
oparg = oparg << 8 | next_instr->op.arg;
@ -4704,6 +4706,7 @@
frame->instr_ptr = next_instr;
next_instr += 1;
INSTRUCTION_STATS(RESERVED);
TIER_ONE_ONLY
assert(0 && "Executing RESERVED instruction.");
Py_UNREACHABLE();
}