-
-
Notifications
You must be signed in to change notification settings - Fork 32k
Bad specialization of STORE_ATTR_INSTANCE_VALUE
with obj.__dict__
#125610
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Labels
3.13
bugs and security fixes
3.14
bugs and security fixes
interpreter-core
(Objects, Python, Grammar, and Parser dirs)
performance
Performance or resource usage
type-bug
An unexpected behavior, bug, or error
Comments
colesbury
added a commit
to colesbury/cpython
that referenced
this issue
Oct 16, 2024
The `STORE_ATTR_INSTANCE_VALUE` opcode doesn't support objects with non-NULL managed dictionaries, so don't specialize to that op in that case.
colesbury
added a commit
to colesbury/cpython
that referenced
this issue
Dec 4, 2024
colesbury
added a commit
that referenced
this issue
Dec 6, 2024
…25612) The `STORE_ATTR_INSTANCE_VALUE` opcode doesn't support objects with non-NULL managed dictionaries, so don't specialize to that op in that case.
miss-islington
pushed a commit
to miss-islington/cpython
that referenced
this issue
Dec 6, 2024
…pythonGH-125612) The `STORE_ATTR_INSTANCE_VALUE` opcode doesn't support objects with non-NULL managed dictionaries, so don't specialize to that op in that case. (cherry picked from commit a353455) Co-authored-by: Sam Gross <[email protected]>
colesbury
added a commit
that referenced
this issue
Dec 6, 2024
GH-125612) (GH-127698) The `STORE_ATTR_INSTANCE_VALUE` opcode doesn't support objects with non-NULL managed dictionaries, so don't specialize to that op in that case. (cherry picked from commit a353455) Co-authored-by: Sam Gross <[email protected]>
srinivasreddy
pushed a commit
to srinivasreddy/cpython
that referenced
this issue
Jan 8, 2025
…pythonGH-125612) The `STORE_ATTR_INSTANCE_VALUE` opcode doesn't support objects with non-NULL managed dictionaries, so don't specialize to that op in that case.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
3.13
bugs and security fixes
3.14
bugs and security fixes
interpreter-core
(Objects, Python, Grammar, and Parser dirs)
performance
Performance or resource usage
type-bug
An unexpected behavior, bug, or error
Consider:
The
STORE_ATTR_INSTANCE_VALUE
has a guard_GUARD_DORV_NO_DICT
that ensures that the object does not have a managed dictionary:cpython/Python/bytecodes.c
Line 2269 in 760872e
However, the specializer for
STORE_ATTR_INSTANCE_VALUE
does not take that into account. It only checks that the inline values are valid:cpython/Python/specialize.c
Lines 867 to 886 in 760872e
I'm not sure if we should change the guard or change
specialize.c
Linked PRs
STORE_ATTR_INSTANCE_VALUE
specialization check #125612STORE_ATTR_INSTANCE_VALUE
specialization check (GH-125612) #127698The text was updated successfully, but these errors were encountered: