diff options
author | Nadeshiko Manju <me@manjusaka.me> | 2025-04-27 20:30:28 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-04-27 20:30:28 +0800 |
commit | 614d79231d1e60d31b9452ea2afbc2a7d2f0034b (patch) | |
tree | 534c9ed37c87d3e29bde9e06a68d299d1c42c763 /Python | |
parent | 8b4fd24ca5e544735f799089188729753817c391 (diff) | |
download | cpython-614d79231d1e60d31b9452ea2afbc2a7d2f0034b.tar.gz cpython-614d79231d1e60d31b9452ea2afbc2a7d2f0034b.zip |
gh-131798: JIT - Use `sym_new_type` instead of `sym_new_not_null` for _BUILD_STRING, _BUILD_SET (GH-132564)
Signed-off-by: Manjusaka <me@manjusaka.me>
Diffstat (limited to 'Python')
-rw-r--r-- | Python/optimizer_bytecodes.c | 8 | ||||
-rw-r--r-- | Python/optimizer_cases.c.h | 4 |
2 files changed, 10 insertions, 2 deletions
diff --git a/Python/optimizer_bytecodes.c b/Python/optimizer_bytecodes.c index f862c9c8c6a..567caad2255 100644 --- a/Python/optimizer_bytecodes.c +++ b/Python/optimizer_bytecodes.c @@ -977,6 +977,14 @@ dummy_func(void) { map = sym_new_type(ctx, &PyDict_Type); } + op(_BUILD_STRING, (values[oparg] -- str)) { + str = sym_new_type(ctx, &PyUnicode_Type); + } + + op(_BUILD_SET, (values[oparg] -- set)) { + set = sym_new_type(ctx, &PySet_Type); + } + op(_UNPACK_SEQUENCE_TWO_TUPLE, (seq -- val1, val0)) { val0 = sym_tuple_getitem(ctx, seq, 0); val1 = sym_tuple_getitem(ctx, seq, 1); diff --git a/Python/optimizer_cases.c.h b/Python/optimizer_cases.c.h index c92b036eb56..679240b6efa 100644 --- a/Python/optimizer_cases.c.h +++ b/Python/optimizer_cases.c.h @@ -1032,7 +1032,7 @@ case _BUILD_STRING: { JitOptSymbol *str; - str = sym_new_not_null(ctx); + str = sym_new_type(ctx, &PyUnicode_Type); stack_pointer[-oparg] = str; stack_pointer += 1 - oparg; assert(WITHIN_STACK_BOUNDS()); @@ -1073,7 +1073,7 @@ case _BUILD_SET: { JitOptSymbol *set; - set = sym_new_not_null(ctx); + set = sym_new_type(ctx, &PySet_Type); stack_pointer[-oparg] = set; stack_pointer += 1 - oparg; assert(WITHIN_STACK_BOUNDS()); |