From 65f8eb71190f870c66fb00da29a670ee232a3fd5 Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Tue, 9 Jan 2024 10:18:11 -0800 Subject: Fix opcode name printing in debug mode (#113870) Fix a few places where the lltrace debug output printed ``(null)`` instead of an opcode name, because it was calling ``_PyUOpName()`` on a Tier-1 opcode. --- Python/optimizer.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Python/optimizer.c b/Python/optimizer.c index f27af14..ad5b499 100644 --- a/Python/optimizer.c +++ b/Python/optimizer.c @@ -2,7 +2,7 @@ #include "opcode.h" #include "pycore_interp.h" #include "pycore_bitutils.h" // _Py_popcount32() -#include "pycore_opcode_metadata.h" // _PyOpcode_OpName() +#include "pycore_opcode_metadata.h" // _PyOpcode_OpName[] #include "pycore_opcode_utils.h" // MAX_REAL_OPCODE #include "pycore_optimizer.h" // _Py_uop_analyze_and_optimize() #include "pycore_pystate.h" // _PyInterpreterState_GET() @@ -563,7 +563,7 @@ top: // Jump here after _PUSH_FRAME or likely branches uint32_t uopcode = BRANCH_TO_GUARD[opcode - POP_JUMP_IF_FALSE][jump_likely]; _Py_CODEUNIT *next_instr = instr + 1 + _PyOpcode_Caches[_PyOpcode_Deopt[opcode]]; DPRINTF(2, "%s(%d): counter=%x, bitcount=%d, likely=%d, confidence=%d, uopcode=%s\n", - _PyUOpName(opcode), oparg, + _PyOpcode_OpName[opcode], oparg, counter, bitcount, jump_likely, confidence, _PyUOpName(uopcode)); ADD_TO_TRACE(uopcode, max_length, 0, target); if (jump_likely) { @@ -722,7 +722,7 @@ top: // Jump here after _PUSH_FRAME or likely branches } break; } - DPRINTF(2, "Unsupported opcode %s\n", _PyUOpName(opcode)); + DPRINTF(2, "Unsupported opcode %s\n", _PyOpcode_OpName[opcode]); OPT_UNSUPPORTED_OPCODE(opcode); goto done; // Break out of loop } // End default -- cgit v0.12