aarch64: Implement uextend/sextend for i128 values#3005
Merged
Conversation
a609e77 to
2deb46e
Compare
2deb46e to
c771ab3
Compare
cfallin
reviewed
Jun 21, 2021
Member
cfallin
left a comment
There was a problem hiding this comment.
Thanks! Just a suggestion for a clarification to the branching logic below but otherwise looks good.
|
|
||
| let needs_extend = from_bits < to_bits && to_bits <= 64; | ||
| // For i128, we want to extend the lower half, except if it is already 64 bits. | ||
| let needs_lower_extend = to_bits > 64 && from_bits < 64; |
Member
There was a problem hiding this comment.
Can we clarify the logic a bit by adding a let pass_through_lower = to_bits > 64 && !needs_lower_extend here, then moving the move-emission below (will comment separately)?
| }); | ||
| } | ||
| } | ||
|
|
Member
There was a problem hiding this comment.
With the above pass_through_lower, could we do an else if pass_through_lower { ctx.emit(/* move */) } here? I like that arrangement a bit better as it gives a clear separation between "produce lower register" and "produce upper register" parts of the code.
c771ab3 to
f25f5b2
Compare
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
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.
Hey, a few more ops for i128 support