Skip to content

gh-119726: JIT: re-use trampolines on AArch64 #120250

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 7 commits into from
Jun 19, 2024
Merged

Conversation

diegorusso
Copy link
Contributor

@diegorusso diegorusso commented Jun 7, 2024

When emitting AArch64 trampolines at the end of every data stencil, re-use existent ones fot the same symbol.

When emitting AArch64 trampolines at the end of every data stencil,
re-use existent ones fot the same symbol.
Fix the disassebly to reflect the "bl" instruction without the
relocation.
Copy link
Member

@brandtbucher brandtbucher left a comment

Choose a reason for hiding this comment

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

Nice work! Just a few thoughts I had while looking it over:

@brandtbucher brandtbucher self-assigned this Jun 8, 2024
@brandtbucher brandtbucher added performance Performance or resource usage interpreter-core (Objects, Python, Grammar, and Parser dirs) topic-JIT labels Jun 8, 2024
@brandtbucher
Copy link
Member

Pretty sure the CI failures are preexisting (we should probably confirm that those tests pass on native hardware, and add them to the ones skipped under emulation in another PR).

@diegorusso
Copy link
Contributor Author

diegorusso commented Jun 10, 2024

Pretty sure the CI failures are preexisting (we should probably confirm that those tests pass on native hardware, and add them to the ones skipped under emulation in another PR).

We've tested it on our internal CI and we didn't see any problems. We tested it against Linux AArch64/x86 and MacOS arm64.

@brandtbucher
Copy link
Member

We've tested it on our internal CI and we didn't see any problems. We tested it against Linux AArch64/x86 and MacOS arm64.

Awesome. Want to open a PR to update Tools/jit/ignore-tests-emulated-linux.txt with the failing tests?

@diegorusso
Copy link
Contributor Author

We've tested it on our internal CI and we didn't see any problems. We tested it against Linux AArch64/x86 and MacOS arm64.

Awesome. Want to open a PR to update Tools/jit/ignore-tests-emulated-linux.txt with the failing tests?

you have it: #120375

Copy link
Member

@brandtbucher brandtbucher left a comment

Choose a reason for hiding this comment

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

Thanks! Just two more suggestions:

@brandtbucher brandtbucher merged commit a0dce37 into python:main Jun 19, 2024
59 of 63 checks passed
noahbkim pushed a commit to hudson-trading/cpython that referenced this pull request Jul 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
interpreter-core (Objects, Python, Grammar, and Parser dirs) performance Performance or resource usage topic-JIT
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants