Skip to content

bpo-44337: Port LOAD_ATTR to PEP 659 adaptive interpreter #26595

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

Merged
merged 17 commits into from
Jun 10, 2021

Conversation

markshannon
Copy link
Member

@markshannon markshannon commented Jun 8, 2021

Implements four specializations of LOAD_ATTR:

  • LOAD_ATTR_SLOT for slots.
  • LOAD_ATTR_SPLIT_KEYS for attributes in instance dictionaries that have split keys.
  • LOAD_ATTR_HINT for attributes in instance dictionaries that do not have split keys.
  • LOAD_ATTR_MODULE for module attributes

There are more specializations of LOAD_ATTR that we want to implement, but this PR is large enough already.

https://bugs.python.org/issue44337

@markshannon markshannon added the 🔨 test-with-buildbots Test PR w/ buildbots; report in status section label Jun 8, 2021
@bedevere-bot
Copy link

🤖 New build scheduled with the buildbot fleet by @markshannon for commit f9e999c 🤖

If you want to schedule another build, you need to add the ":hammer: test-with-buildbots" label again.

@bedevere-bot bedevere-bot removed the 🔨 test-with-buildbots Test PR w/ buildbots; report in status section label Jun 8, 2021
@markshannon markshannon added the 🔨 test-with-buildbots Test PR w/ buildbots; report in status section label Jun 9, 2021
@bedevere-bot
Copy link

🤖 New build scheduled with the buildbot fleet by @markshannon for commit b07f219 🤖

If you want to schedule another build, you need to add the ":hammer: test-with-buildbots" label again.

@bedevere-bot bedevere-bot removed the 🔨 test-with-buildbots Test PR w/ buildbots; report in status section label Jun 9, 2021
@markshannon markshannon added the 🔨 test-with-buildbots Test PR w/ buildbots; report in status section label Jun 9, 2021
@bedevere-bot
Copy link

🤖 New build scheduled with the buildbot fleet by @markshannon for commit 6d9ef8d 🤖

If you want to schedule another build, you need to add the ":hammer: test-with-buildbots" label again.

@bedevere-bot bedevere-bot removed the 🔨 test-with-buildbots Test PR w/ buildbots; report in status section label Jun 9, 2021
@pablogsal
Copy link
Member

pablogsal commented Jun 9, 2021

@markshannon You may want to check out https://bugs.python.org/msg395432 . This shows that the ASAN failures are not false positives as there is obviously something corrupted and we are reading that memory.

@markshannon
Copy link
Member Author

Hopefully #26626 will fix the address sanitizer failures

@markshannon markshannon closed this Jun 9, 2021
@markshannon markshannon reopened this Jun 9, 2021
@markshannon markshannon closed this Jun 9, 2021
@markshannon markshannon reopened this Jun 9, 2021
@markshannon markshannon added the 🔨 test-with-buildbots Test PR w/ buildbots; report in status section label Jun 9, 2021
@bedevere-bot
Copy link

🤖 New build scheduled with the buildbot fleet by @markshannon for commit 41cb98f 🤖

If you want to schedule another build, you need to add the ":hammer: test-with-buildbots" label again.

@bedevere-bot bedevere-bot removed the 🔨 test-with-buildbots Test PR w/ buildbots; report in status section label Jun 9, 2021
@markshannon markshannon merged commit e117c02 into python:main Jun 10, 2021
@markshannon markshannon deleted the specialize-load-attr branch June 10, 2021 07:57
DEOPT_IF(res == NULL, LOAD_ATTR);
STAT_INC(loadattr_hit);
record_cache_hit(cache0);
STAT_INC(loadattr_hit);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just casually reading through some of the code, it looks like the STAT_INC(loadattr_hit); is duplicated here (see two lines up).

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Carl. #26718

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants