Skip to content

Port flag-based ops to ISLE (AArch64)#4942

Merged
cfallin merged 1 commit into
bytecodealliance:mainfrom
dheaton-arm:isle-flags
Sep 22, 2022
Merged

Port flag-based ops to ISLE (AArch64)#4942
cfallin merged 1 commit into
bytecodealliance:mainfrom
dheaton-arm:isle-flags

Conversation

@dheaton-arm
Copy link
Copy Markdown
Contributor

Ported the existing implementations of the following opcodes for AArch64 to ISLE:

  • Trueif
  • Trueff
  • Trapif
  • Trapff
  • Select
  • Selectif
  • SelectifSpectreGuard

Also fixed the implementation of true{if,ff} for the interpreter.

Copyright (c) 2022 Arm Limited

@github-actions github-actions Bot added cranelift Issues related to the Cranelift code generator cranelift:area:aarch64 Issues related to AArch64 backend. labels Sep 22, 2022
Ported the existing implementations of the following opcodes for AArch64
to ISLE:
- `Trueif`
- `Trueff`
- `Trapif`
- `Trapff`
- `Select`
- `Selectif`
- `SelectifSpectreGuard`

Copyright (c) 2022 Arm Limited
Copy link
Copy Markdown
Member

@cfallin cfallin left a comment

Choose a reason for hiding this comment

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

Looks great, thanks!

}

; block0:
; adds x3, x0, x1
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Wow, I'm surprised the test was missing this before -- that was a clear miscompilation that I guess we never saw only because we always used the result of iadd_ifcout directly as well. In any case, this PR fixes the issue!

@cfallin cfallin merged commit 3f8cccf into bytecodealliance:main Sep 22, 2022
@dheaton-arm dheaton-arm deleted the isle-flags branch September 23, 2022 09:58
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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants