Skip to content

Conversation

galenbwill
Copy link
Contributor

Addresses #7280

This PR implements the fix, but someone should sign off on this with respect to the following concern:

while i can fix always branch (by forcing it to be a TBZ/CBZ and changing the tested register to the zero XZR/WZR so the branch always happens), its’s not clear to me that it’s “ok”, in the sense that it changes the data dependency of the instruction, from the tested register to the zero register.

@galenbwill galenbwill added Component: Architecture Issue needs changes to an architecture plugin Arch: ARM64 Issues with the AArch64 architecture plugin Impact: Low Issue is a papercut or has a good, supported workaround Effort: Trivial Issue should take < 1 day labels Aug 15, 2025
@ElykDeer
Copy link
Member

ElykDeer commented Aug 19, 2025

I'm okay with the data-flow caveat; x86 will completely nop things out for some branches, and destroys register references in others as well. These changes look fine to me....but would there be any benefit to using a nop in some cases? Unless someone can think of a reason I think it's fine as-is.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Arch: ARM64 Issues with the AArch64 architecture plugin Component: Architecture Issue needs changes to an architecture plugin Effort: Trivial Issue should take < 1 day Impact: Low Issue is a papercut or has a good, supported workaround
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants