summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIrit Katriel <1055913+iritkatriel@users.noreply.github.com>2023-08-14 09:51:50 (GMT)
committerGitHub <noreply@github.com>2023-08-14 09:51:50 (GMT)
commit608927b01447b110de5094271fbc4d49c60130b0 (patch)
treedde6b499e7e53f18b2284023e369d1924ef14ea9
parentc3887b57a75a105615dd555aaf74e6c9a243ebdd (diff)
downloadcpython-608927b01447b110de5094271fbc4d49c60130b0.zip
cpython-608927b01447b110de5094271fbc4d49c60130b0.tar.gz
cpython-608927b01447b110de5094271fbc4d49c60130b0.tar.bz2
gh-103082: use IS_VALID_OPCODE instead of _PyOpcode_OpName to check if an opcode is defined (#107882)
-rw-r--r--Python/instrumentation.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/Python/instrumentation.c b/Python/instrumentation.c
index 6d11649..b50e8e2 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;
}