https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100929
Andrew Pinski changed:
What|Removed |Added
Status|UNCONFIRMED |NEW
Last reconfirmed|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100929
--- Comment #6 from Marc Glisse ---
(blend is now lowered in gimple)
For the integer case, the mix of vector(int) and vector(char) obfuscates things
a bit, we have
__m256i if_else_int (__m256i x, __m256i y)
{
vector(32) char _4;
vector(32)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100929
--- Comment #5 from Denis Yaroshevskiy ---
x86 (https://godbolt.org/z/zPWbnqfPY)
Options: -O3 -mavx2
```
#include
__m256 if_else_float(__m256 x, __m256 y) {
__m256 mask = _mm256_cmp_ps(y, x, _CMP_LT_OQ);
return _mm256_blendv_ps(x, y, mas
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100929
--- Comment #4 from Marc Glisse ---
(In reply to Denis Yaroshevskiy from comment #3)
> Is what @Andrew Pinski copied enough?
I think so (it is missing the command line), although one example with an
integer type could also help in case floats t
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100929
--- Comment #3 from Denis Yaroshevskiy ---
> Please attach your testcases to the bug report.
Is what @Andrew Pinski copied enough? I can attach the same code as file.
> I don't know if there would be issues for comparisons (with -ftrapping-mat
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100929
--- Comment #2 from Andrew Pinski ---
Original x86_64 testcase:
#include
__m256 if_else(__m256 x, __m256 y) {
__m256 mask = _mm256_cmp_ps(y, x, _CMP_LT_OQ);
return _mm256_blendv_ps(x, y, mask);
}
__m256 min(__m256 x, __m256 y) {
return
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100929
Marc Glisse changed:
What|Removed |Added
Version|og10 (devel/omp/gcc-10) |11.1.0
Keywords|