-
Notifications
You must be signed in to change notification settings - Fork 41
Add BIC immediate, CMHI, CNT, single-precision FMOV and UADDLV to ARM model #210
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
This adds the form "fmov Wdd, Snn" to the model, also slightly refactoring the modelling of the existing 64-bit versions.
This currently only adds the .8h version.
| // MOVI | ||
| if q then | ||
| // MOVI, 128-bit only | ||
| if cmode = word 0b1110 /\ q then |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This change looks fine to me. This additional guard is necessary because arm_adv_simd_expand_imm can now handle more cases.
pennyannn
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have done the following things:
- Checked the modeling against ARM manual
- Running this PR on my graviton3 machine and I found all modeled instruction variants in the output
|
Should these instructions be added to |
This should fix issues pointed out in the code review. The arm/allowed_asm list has been updated for other recently added instructions too.
|
Thanks for the eagle-eyed review! I think the new commit fixes all that. I took the chance to add other new instructions that were added recently to the |
aqjune-aws
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Checked that the bit formats are equal to what the Arm doc describes.
- Also checked that cosimulator does not fail for > 10 minutes, after excluding all scalar instructions to focus on possibly affected vector instructions.
|
Probably we can merge after Nevine's patch is merged first, since her PR is reviewed first..? |
Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.