summaryrefslogtreecommitdiffstats
path: root/Python/opcode_metadata.h
diff options
context:
space:
mode:
authorIrit Katriel <1055913+iritkatriel@users.noreply.github.com>2023-01-25 22:29:56 (GMT)
committerGitHub <noreply@github.com>2023-01-25 22:29:56 (GMT)
commitb400219df5f245ef2eb3c7ce0589b1f8020a1192 (patch)
tree6ce0e7cf8c039cf5c5f2f573c7f6060c329cdc35 /Python/opcode_metadata.h
parent6162a0e305faf82534c011ddb2fb99a94ae84d29 (diff)
downloadcpython-b400219df5f245ef2eb3c7ce0589b1f8020a1192.zip
cpython-b400219df5f245ef2eb3c7ce0589b1f8020a1192.tar.gz
cpython-b400219df5f245ef2eb3c7ce0589b1f8020a1192.tar.bz2
gh-98831: rewrite RAISE_VARARGS in the instruction definition DSL (#101306)
Diffstat (limited to 'Python/opcode_metadata.h')
-rw-r--r--Python/opcode_metadata.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/Python/opcode_metadata.h b/Python/opcode_metadata.h
index 46fd967..cca8662 100644
--- a/Python/opcode_metadata.h
+++ b/Python/opcode_metadata.h
@@ -2,6 +2,7 @@
// from Python/bytecodes.c
// Do not edit!
+#ifndef NDEBUG
static int
_PyOpcode_num_popped(int opcode, int oparg) {
switch(opcode) {
@@ -86,7 +87,7 @@ _PyOpcode_num_popped(int opcode, int oparg) {
case CALL_INTRINSIC_1:
return 1;
case RAISE_VARARGS:
- return -1;
+ return oparg;
case INTERPRETER_EXIT:
return 1;
case RETURN_VALUE:
@@ -345,7 +346,9 @@ _PyOpcode_num_popped(int opcode, int oparg) {
Py_UNREACHABLE();
}
}
+#endif
+#ifndef NDEBUG
static int
_PyOpcode_num_pushed(int opcode, int oparg) {
switch(opcode) {
@@ -430,7 +433,7 @@ _PyOpcode_num_pushed(int opcode, int oparg) {
case CALL_INTRINSIC_1:
return 1;
case RAISE_VARARGS:
- return -1;
+ return 0;
case INTERPRETER_EXIT:
return 0;
case RETURN_VALUE:
@@ -689,6 +692,7 @@ _PyOpcode_num_pushed(int opcode, int oparg) {
Py_UNREACHABLE();
}
}
+#endif
enum Direction { DIR_NONE, DIR_READ, DIR_WRITE };
enum InstructionFormat { INSTR_FMT_IB, INSTR_FMT_IBC, INSTR_FMT_IBC0, INSTR_FMT_IBC000, INSTR_FMT_IBIB, INSTR_FMT_IX, INSTR_FMT_IXC, INSTR_FMT_IXC000 };
struct opcode_metadata {