-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
[Mono] Add SIMD intrinsics for Vector64/128 "All" and "Any" variants of GT/GE/LT/LE #65889
[Mono] Add SIMD intrinsics for Vector64/128 "All" and "Any" variants of GT/GE/LT/LE #65889
Conversation
…intrinsics-gt-lt-all-any
…intrinsics-gt-lt-all-any
@@ -7736,6 +7736,10 @@ process_bb (EmitContext *ctx, MonoBasicBlock *bb) | |||
values [ins->dreg] = LLVMConstNull (type_to_llvm_type (ctx, m_class_get_byval_arg (ins->klass))); | |||
break; | |||
} | |||
case OP_XONES: { |
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.
nit: XONES
is a confusing term
This means AllBitsSet
where-as many users may interpret it as the integer 1
.
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.
OP_XONES
is already in the repo, it just hasn't been implemented in mini-llvm
so far
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.
Sure, I still felt it was important to call out. This is a generally confusing term and it might be worth considering doing a rename to avoid the confusion.
We explicitly avoided the term ones
for the managed side in API review because it is people read it and think it refers to Create(1)
(broadcast 1 to all elements) or Create(1, 1, ..., 1)
(explicitly set each element to 1).
Where-as it actually produces something that is akin to the bitwise pattern ~0
.
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 see. Thanks for the explanation and context.
…sival/runtime into vector-intrinsics-gt-lt-all-any
…intrinsics-gt-lt-all-any
…intrinsics-gt-lt-all-any
Related to #64072
GreaterThanAll
GreaterThanAny
GreaterThanOrEqualAll
GreaterThanOrEqualAny
LessThanAll
LessThanAny
LessThanOrEqualAll
LessThanOrEqualAny