Skip to content

aarch64: lower AtomicCAS128 to caspal when LSE is supported - #14141

Open
V3L0C1T13S wants to merge 2 commits into
bytecodealliance:mainfrom
microlift:aarch64_atomiccas_128
Open

aarch64: lower AtomicCAS128 to caspal when LSE is supported#14141
V3L0C1T13S wants to merge 2 commits into
bytecodealliance:mainfrom
microlift:aarch64_atomiccas_128

Conversation

@V3L0C1T13S

Copy link
Copy Markdown

This PR adds support for lowering AtomicCAS128 by lowering it to caspal, gated behind FEAT_LSE. Lowering to caspal makes it use acquire-release semantics like other atomics do.

This is currently being used in a project I'm working on (privately for now) to emulate the semantics of an x86-64 cmpxchg16b on AArch64 and other backends that may eventually support AtomicCAS128.

@V3L0C1T13S
V3L0C1T13S requested a review from a team as a code owner August 15, 2026 01:28
@V3L0C1T13S
V3L0C1T13S requested review from fitzgen and removed request for a team August 15, 2026 01:28
@github-actions github-actions Bot added cranelift Issues related to the Cranelift code generator cranelift:area:aarch64 Issues related to AArch64 backend. isle Related to the ISLE domain-specific language labels Aug 15, 2026
@github-actions

Copy link
Copy Markdown

Subscribe to Label Action

cc @cfallin, @fitzgen

Details This issue or pull request has been labeled: "cranelift", "cranelift:area:aarch64", "isle"

Thus the following users have been cc'd because of the following labels:

  • cfallin: isle
  • fitzgen: isle

To subscribe or unsubscribe from this label, edit the .github/subscribe-to-label.json configuration file.

Learn more.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cranelift:area:aarch64 Issues related to AArch64 backend. cranelift Issues related to the Cranelift code generator isle Related to the ISLE domain-specific language

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant