diff options
author | Dennis Sweeney <36520290+sweeneyde@users.noreply.github.com> | 2021-12-03 11:29:12 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-12-03 11:29:12 (GMT) |
commit | 03768c4d139df46212a091ed931aad03bec18b57 (patch) | |
tree | 35ab5e03aacded970ee0b1d21077f18782176c08 /Include/internal | |
parent | 99fcf1505218464c489d419d4500f126b6d6dc28 (diff) | |
download | cpython-03768c4d139df46212a091ed931aad03bec18b57.zip cpython-03768c4d139df46212a091ed931aad03bec18b57.tar.gz cpython-03768c4d139df46212a091ed931aad03bec18b57.tar.bz2 |
bpo-45885: Specialize COMPARE_OP (GH-29734)
* Add COMPARE_OP_ADAPTIVE adaptive instruction.
* Add COMPARE_OP_FLOAT_JUMP, COMPARE_OP_INT_JUMP and COMPARE_OP_STR_JUMP specialized instructions.
* Introduce and use _PyUnicode_Equal
Diffstat (limited to 'Include/internal')
-rw-r--r-- | Include/internal/pycore_code.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/Include/internal/pycore_code.h b/Include/internal/pycore_code.h index d4d1392..496d52f 100644 --- a/Include/internal/pycore_code.h +++ b/Include/internal/pycore_code.h @@ -42,6 +42,7 @@ typedef struct { uint16_t defaults_len; } _PyCallCache; + /* Add specialized versions of entries to this union. * * Do not break the invariant: sizeof(SpecializedCacheEntry) == 8 @@ -273,6 +274,7 @@ int _Py_Specialize_StoreSubscr(PyObject *container, PyObject *sub, _Py_CODEUNIT int _Py_Specialize_CallFunction(PyObject *callable, _Py_CODEUNIT *instr, int nargs, SpecializedCacheEntry *cache, PyObject *builtins); void _Py_Specialize_BinaryOp(PyObject *lhs, PyObject *rhs, _Py_CODEUNIT *instr, SpecializedCacheEntry *cache); +void _Py_Specialize_CompareOp(PyObject *lhs, PyObject *rhs, _Py_CODEUNIT *instr, SpecializedCacheEntry *cache); #define PRINT_SPECIALIZATION_STATS 0 #define PRINT_SPECIALIZATION_STATS_DETAILED 0 |