extern const struct opcode_metadata _PyOpcode_opcode_metadata[512];
extern const struct opcode_macro_expansion _PyOpcode_macro_expansion[256];
extern const char * const _PyOpcode_uop_name[512];
-#else
+#else // if NEED_OPCODE_METADATA
const struct opcode_metadata _PyOpcode_opcode_metadata[512] = {
[NOP] = { true, INSTR_FMT_IX, 0 },
[RESUME] = { true, INSTR_FMT_IB, HAS_ARG_FLAG },
[BINARY_OP] = { .nuops = 1, .uops = { { BINARY_OP, 0, 0 } } },
[SWAP] = { .nuops = 1, .uops = { { SWAP, 0, 0 } } },
};
-#ifdef NEED_OPCODE_METADATA
const char * const _PyOpcode_uop_name[512] = {
[300] = "EXIT_TRACE",
[301] = "SAVE_IP",
[316] = "IS_NONE",
};
#endif // NEED_OPCODE_METADATA
-#endif
self.out.emit("extern const struct opcode_metadata _PyOpcode_opcode_metadata[512];")
self.out.emit("extern const struct opcode_macro_expansion _PyOpcode_macro_expansion[256];")
self.out.emit("extern const char * const _PyOpcode_uop_name[512];")
- self.out.emit("#else")
+ self.out.emit("#else // if NEED_OPCODE_METADATA")
self.out.emit("const struct opcode_metadata _PyOpcode_opcode_metadata[512] = {")
case _:
typing.assert_never(thing)
- self.out.emit("#ifdef NEED_OPCODE_METADATA")
with self.out.block("const char * const _PyOpcode_uop_name[512] =", ";"):
self.write_uop_items(lambda name, counter: f"[{counter}] = \"{name}\",")
- self.out.emit("#endif // NEED_OPCODE_METADATA")
- self.out.emit("#endif")
+ self.out.emit("#endif // NEED_OPCODE_METADATA")
with open(self.pymetadata_filename, "w") as f:
# Create formatter