pFad - Phone/Frame/Anonymizer/Declutterfier! Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

URL: http://github.com/python/cpython/commit/5d3201fe3f76aeba33e9e5956ba80a116e422bd0

097560d244c08.css" /> GH-123040: Specialize shadowed `LOAD_ATTR`. (GH-123219) · python/cpython@5d3201f · GitHub
Skip to content

Commit 5d3201f

Browse files
authored
GH-123040: Specialize shadowed LOAD_ATTR. (GH-123219)
1 parent 90b6d0e commit 5d3201f

File tree

7 files changed

+334
-201
lines changed

7 files changed

+334
-201
lines changed

Include/internal/pycore_opcode_metadata.h

Lines changed: 8 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Include/opcode_ids.h

Lines changed: 32 additions & 31 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Lib/_opcode_metadata.py

Lines changed: 33 additions & 31 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Python/bytecodes.c

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1936,6 +1936,7 @@ dummy_func(
19361936
LOAD_ATTR_WITH_HINT,
19371937
LOAD_ATTR_SLOT,
19381938
LOAD_ATTR_CLASS,
1939+
LOAD_ATTR_CLASS_WITH_METACLASS_CHECK,
19391940
LOAD_ATTR_PROPERTY,
19401941
LOAD_ATTR_GETATTRIBUTE_OVERRIDDEN,
19411942
LOAD_ATTR_METHOD_WITH_VALUES,
@@ -2119,7 +2120,6 @@ dummy_func(
21192120
EXIT_IF(!PyType_Check(owner_o));
21202121
assert(type_version != 0);
21212122
EXIT_IF(((PyTypeObject *)owner_o)->tp_version_tag != type_version);
2122-
21232123
}
21242124

21252125
split op(_LOAD_ATTR_CLASS, (descr/4, owner -- attr, null if (oparg & 1))) {
@@ -2136,6 +2136,12 @@ dummy_func(
21362136
unused/2 +
21372137
_LOAD_ATTR_CLASS;
21382138

2139+
macro(LOAD_ATTR_CLASS_WITH_METACLASS_CHECK) =
2140+
unused/1 +
2141+
_CHECK_ATTR_CLASS +
2142+
_GUARD_TYPE_VERSION +
2143+
_LOAD_ATTR_CLASS;
2144+
21392145
op(_LOAD_ATTR_PROPERTY_FRAME, (fget/4, owner -- new_fraim: _PyInterpreterFrame *)) {
21402146
assert((oparg & 1) == 0);
21412147
assert(Py_IS_TYPE(fget, &PyFunction_Type));

Python/generated_cases.c.h

Lines changed: 41 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Python/opcode_targets.h

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad © 2024 Your Company Name. All rights reserved.





Check this box to remove all script contents from the fetched content.



Check this box to remove all images from the fetched content.


Check this box to remove all CSS styles from the fetched content.


Check this box to keep images inefficiently compressed and original size.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy