-
Notifications
You must be signed in to change notification settings - Fork 22
AArch64: Add support for repeated .<dt> specifiers #316
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
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
fd6b07b
to
501a3bf
Compare
ae437c5
to
8b4c591
Compare
mkannwischer
requested changes
Sep 19, 2025
36c007c
to
6840fa5
Compare
28acf19
to
2b2ba39
Compare
mkannwischer
requested changes
Sep 25, 2025
2b2ba39
to
482ba33
Compare
mkannwischer
approved these changes
Oct 2, 2025
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.
LGTM. Thanks @willieyz!
- Add support for using repeated `.<dt*>` in instruction patterns, while keeping backward compatibility. - Introduce a new static method `_replace_duplicate_mnemonicKey()` in AArch64Instruction to handle duplicate specifiers during parsing and writing. Signed-off-by: willieyz <willie.zhao@chelpis.com>
…ring parsing. - This commit enforcing that all `.<dt*>` are equal during parsing. - Here is an example: - For pattern: `smlsl <Vd>.<dt0>, <Va>.<dt1>, <Vb>.<dt1>` - When parsing: - `smlsl v6.4s, v7.4h, v8.4h` -> Passed, - `smlsl v6.4s, v7.4h, v8.4s` -> Failed, return `"Inconsistent data type: 4h vs 4s"` - `smlsl v6.4h, v7.4h, v8.4h` -> Failed, return `"Inconsistent dt: <dt1>"` Signed-off-by: willieyz <willie.zhao@chelpis.com>
Signed-off-by: willieyz <willie.zhao@chelpis.com>
482ba33
to
98c9d0c
Compare
mkannwischer
approved these changes
Oct 2, 2025
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Resolves: AArch64: Don't force numbering of
<dt>
annotations in instruction pattern #219Add support for using repeated
.<dt>
in instruction patterns, while keeping backward compatibility.This PR solve problem by:
_replace_duplicate_mnemonicKey()
inAArch64Instruction
to handle duplicate<dt>
specifiers during parsing and writing..<dt*>
are equal during parsing.smlsl <Vd>.<dt0>, <Va>.<dt1>, <Vb>.<dt1>
smlsl v6.4s, v7.4h, v8.4h
-> Passed,smlsl v6.4s, v7.4h, v8.4s
-> Failed,return
return "Inconsistent dataname: <dt0> vs <dt1> for datatype: 4s"
smlsl v6.4s, v7.4h, v8.16b
-> Failed,return
"Inconsistent datatype: 4h vs 16b for dataname: <dt1>"