[Bug target/109900] _mm256_abs_epi8 is not expanded on gimple level

2023-05-23 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109900

Andrew Pinski  changed:

   What|Removed |Added

 Resolution|--- |FIXED
 Status|UNCONFIRMED |RESOLVED
   Target Milestone|--- |14.0

--- Comment #4 from Andrew Pinski  ---
Fixed as mentioned.

[Bug target/109900] _mm256_abs_epi8 is not expanded on gimple level

2023-05-23 Thread crazylht at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109900

--- Comment #3 from Hongtao.liu  ---
Fixed for GCC14.

[Bug target/109900] _mm256_abs_epi8 is not expanded on gimple level

2023-05-23 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109900

--- Comment #2 from CVS Commits  ---
The master branch has been updated by hongtao Liu :

https://gcc.gnu.org/g:1ede03e2d0437ea9c2f7453fcbe263505b4e0def

commit r14-1145-g1ede03e2d0437ea9c2f7453fcbe263505b4e0def
Author: liuhongt 
Date:   Fri May 19 13:55:50 2023 +0800

Fold _mm{,256,512}_abs_{epi8,epi16,epi32,epi64} into gimple ABS_EXPR.

Also for 64-bit vector abs intrinsics _mm_abs_{pi8,pi16,pi32}.

gcc/ChangeLog:

PR target/109900
* config/i386/i386.cc (ix86_gimple_fold_builtin): Fold
_mm{,256,512}_abs_{epi8,epi16,epi32,epi64} and
_mm_abs_{pi8,pi16,pi32} into gimple ABS_EXPR.
(ix86_masked_all_ones): Handle 64-bit mask.
* config/i386/i386-builtin.def: Replace icode of related
non-mask simd abs builtins with CODE_FOR_nothing.

gcc/testsuite/ChangeLog:

* gcc.target/i386/pr109900.c: New test.

[Bug target/109900] _mm256_abs_epi8 is not expanded on gimple level

2023-05-18 Thread crazylht at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109900

--- Comment #1 from Hongtao.liu  ---
Yes, let me do the folding.
FYI, for those floating point abs intrinsics, they're already implemented as 

_mm512_abs_ps (__m512 __A)
{
  return (__m512) _mm512_and_epi32 ((__m512i) __A,
_mm512_set1_epi32 (0x7fff));
}

And no need for folding.