From: Irit Katriel <1055913+iritkatriel@users.noreply.github.com> Date: Mon, 14 Aug 2023 09:51:50 +0000 (+0100) Subject: gh-103082: use IS_VALID_OPCODE instead of _PyOpcode_OpName to check if an opcode... X-Git-Tag: v3.13.0a1~979 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=608927b01447b110de5094271fbc4d49c60130b0;p=thirdparty%2FPython%2Fcpython.git gh-103082: use IS_VALID_OPCODE instead of _PyOpcode_OpName to check if an opcode is defined (#107882) --- diff --git a/Python/instrumentation.c b/Python/instrumentation.c index 6d11649c07fb..b50e8e26476c 100644 --- a/Python/instrumentation.c +++ b/Python/instrumentation.c @@ -7,6 +7,7 @@ #include "pycore_namespace.h" #include "pycore_object.h" #include "pycore_opcode.h" +#include "pycore_opcode_metadata.h" // IS_VALID_OPCODE #include "pycore_pyerrors.h" #include "pycore_pystate.h" // _PyInterpreterState_GET() @@ -437,11 +438,10 @@ dump_instrumentation_data(PyCodeObject *code, int star, FILE*out) static bool valid_opcode(int opcode) { - if (opcode > 0 && + if (IS_VALID_OPCODE(opcode) && + opcode != CACHE && opcode != RESERVED && - opcode < 255 && - _PyOpcode_OpName[opcode] && - _PyOpcode_OpName[opcode][0] != '<') + opcode < 255) { return true; }