Skip to content

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

Open
@diegorusso

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

Metadata

Metadata

Assignees

Labels

3.14new features, bugs 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