Skip to content

JIT: remove jumps at the end of every micro op on aarch64 #130887

Description

@diegorusso

Feature or enhancement

Bug description:

AArch64 JIT stencils contain a jump at the end of every micro op:

...
    // d4: a8c17bfd      ldp     x29, x30, [sp], #0x10
    // d8: 14000000      b       0xd8 <_JIT_ENTRY+0xd8>
    // 00000000000000d8:  R_AARCH64_JUMP26     _JIT_CONTINUE

These jumps need to be removed and replaced with no-ops to keep the alignment of 8 bytes.
Also the current padding mechanism needs to be removed as well.

CPython versions tested on:

CPython main branch

Operating systems tested on:

No response

Linked PRs

Activity

  1. self-assigned this
    on Mar 5, 2025
  2. added
    performancePerformance or resource usage
    interpreter-core(Objects, Python, Grammar, and Parser dirs)
    3.14bugs and security fixes
    and removed
    type-featureA feature request or enhancement
    on Mar 5, 2025
  3. added
    triagedThe issue has been accepted as valid by a triager.
    on Mar 7, 2025
  4. added a commit that references this issue on Mar 10, 2025
  5. added a commit that references this issue on Mar 25, 2025
  6. added a commit that references this issue on Apr 1, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

3.14bugs and security fixesinterpreter-core(Objects, Python, Grammar, and Parser dirs)performancePerformance or resource usagetopic-JITtriagedThe issue has been accepted as valid by a triager.

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions