Skip to content

Armv8.1-M: Add several missing instructions#420

Open
bremoran wants to merge 8 commits into
slothy-optimizer:mainfrom
bremoran:keccak-interleave-instructions
Open

Armv8.1-M: Add several missing instructions#420
bremoran wants to merge 8 commits into
slothy-optimizer:mainfrom
bremoran:keccak-interleave-instructions

Conversation

@bremoran

@bremoran bremoran commented Feb 24, 2026

Copy link
Copy Markdown
Contributor

Note that paired vmov_double_r2v instructions are destructive, but that this is not currently tracked.

@bremoran bremoran force-pushed the keccak-interleave-instructions branch from 1a159d1 to 8adfe2d Compare February 24, 2026 12:10
@mkannwischer mkannwischer changed the title Add several missing instructions Armv8.1-M: Add several missing instructions Feb 24, 2026

@mkannwischer mkannwischer left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

We have just merged #418, please use the newly added <barrel> shortcut.

Comment thread slothy/targets/arm_v81m/arch_v81m.py Outdated
Comment on lines +1050 to +1051
class bic_ror(MVEInstruction):
pattern = "bic <Rd>, <Rn>, <Rm>, ror <imm>"

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Suggested change
class bic_ror(MVEInstruction):
pattern = "bic <Rd>, <Rn>, <Rm>, ror <imm>"
class bic_shifted(MVEInstruction):
pattern = "bic <Rd>, <Rn>, <Rm>, <barrel> <imm>"

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

please add the newly added instructions also to instructions.s, so we are testing if this actually works as expected.

Note that paired vmov_double_r2v instructions are destructive, but that this is not currently tracked.
Still does not pass instruction test.
@bremoran bremoran force-pushed the keccak-interleave-instructions branch from e53e7b5 to 1d900cf Compare April 30, 2026 09:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Armv8.1-M: Missing scalar instructions bic, str, ror, cmp

2 participants