aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Python
diff options
context:
space:
mode:
authorNadeshiko Manju <me@manjusaka.me>2025-04-27 20:30:28 +0800
committerGitHub <noreply@github.com>2025-04-27 20:30:28 +0800
commit614d79231d1e60d31b9452ea2afbc2a7d2f0034b (patch)
tree534c9ed37c87d3e29bde9e06a68d299d1c42c763 /Python
parent8b4fd24ca5e544735f799089188729753817c391 (diff)
downloadcpython-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.c8
-rw-r--r--Python/optimizer_cases.c.h4
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());