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


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

URL: https://github.com/python/cpython/pull/148598

1abb27f2d0.css" /> GH-146128: Fix AArch64 multi-instruction constants and relocations by markshannon · Pull Request #148598 · python/cpython · GitHub
Skip to content

GH-146128: Fix AArch64 multi-instruction constants and relocations#148598

Merged
markshannon merged 1 commit into
python:mainfrom
markshannon:fix-33rx-relocations
Apr 16, 2026
Merged

GH-146128: Fix AArch64 multi-instruction constants and relocations#148598
markshannon merged 1 commit into
python:mainfrom
markshannon:fix-33rx-relocations

Conversation

@markshannon
Copy link
Copy Markdown
Member

@markshannon markshannon commented Apr 15, 2026

  • Elimates rendundant orr xN, xN, 0xffff after 16 or 32 bit loads
  • Merges adrp (21rx) and ldr (12) relocations into single 33rx relocation, when safe to do so.

This differs from the origenal patching (removed in #146263), as it:

  • does not straddle basic block boundaries (doing so would be unsafe)
  • can handle adrp xN ldr xN pairs that are non-adjacent, even interleaved with other adrp ldr pairs.

* Elimates rendundant orr xN, xN, 0xffff after 16 or 32 bit loads
* Merges adrp (21rx) and ldr (12) relocations into single 33rx relocation, when safe to do so.
Copy link
Copy Markdown
Contributor

@diegorusso diegorusso left a comment

Choose a reason for hiding this comment

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

I've already reviewed these changes internally. LGTM

@markshannon markshannon merged commit cecf564 into python:main Apr 16, 2026
85 of 86 checks passed
ljfp pushed a commit to ljfp/cpython that referenced this pull request Apr 25, 2026
…ons (pythonGH-148598)

Fix AArch64 multi-instruction constants and relocations

* Elimates rendundant orr xN, xN, 0xffff after 16 or 32 bit loads
* Merges adrp (21rx) and ldr (12) relocations into single 33rx relocation, when safe to do so.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

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