summaryrefslogtreecommitdiffstats
path: root/Include/internal/pycore_uops.h
diff options
context:
space:
mode:
authorMark Shannon <mark@hotpy.org>2023-11-15 15:48:58 (GMT)
committerGitHub <noreply@github.com>2023-11-15 15:48:58 (GMT)
commit4bbb367ba65e1df7307f7c6a33afd3c369592188 (patch)
treef771937bb812896de63e1a4252ee6c3217644690 /Include/internal/pycore_uops.h
parent0cfdd6e3d17fee8c1c1f4b42b2146abcb43aa34b (diff)
downloadcpython-4bbb367ba65e1df7307f7c6a33afd3c369592188.zip
cpython-4bbb367ba65e1df7307f7c6a33afd3c369592188.tar.gz
cpython-4bbb367ba65e1df7307f7c6a33afd3c369592188.tar.bz2
GH-111848: Set the IP when de-optimizing (GH-112065)
* Replace jumps with deopts in tier 2 * Fewer special cases of uop names * Add target field to uop IR * Remove more redundant SET_IP and _CHECK_VALIDITY micro-ops * Extend whitelist of non-escaping API functions.
Diffstat (limited to 'Include/internal/pycore_uops.h')
-rw-r--r--Include/internal/pycore_uops.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/Include/internal/pycore_uops.h b/Include/internal/pycore_uops.h
index d8a7d97..0ecbd2d 100644
--- a/Include/internal/pycore_uops.h
+++ b/Include/internal/pycore_uops.h
@@ -13,8 +13,9 @@ extern "C" {
#define _Py_UOP_MAX_TRACE_LENGTH 128
typedef struct {
- uint32_t opcode;
- uint32_t oparg;
+ uint16_t opcode;
+ uint16_t oparg;
+ uint32_t target;
uint64_t operand; // A cache entry
} _PyUOpInstruction;