public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/89021] Implement mmintrin.h in SSE
       [not found] <bug-89021-4@http.gcc.gnu.org/bugzilla/>
@ 2021-06-10 21:56 ` cvs-commit at gcc dot gnu.org
  2021-06-16 14:08 ` cvs-commit at gcc dot gnu.org
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 4+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-06-10 21:56 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89021

--- Comment #56 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Uros Bizjak <uros@gcc.gnu.org>:

https://gcc.gnu.org/g:a325bdd195ee96f826b208c3afb9bed2ec077e12

commit r12-1372-ga325bdd195ee96f826b208c3afb9bed2ec077e12
Author: Peter Bergner <bergner@linux.ibm.com>
Date:   Thu Jun 10 13:54:12 2021 -0500

    i386: Add V8QI and other 64bit vector permutations [PR89021]

    In addition to V8QI permutations, several other missing permutations are
    added for 64bit vector modes for TARGET_SSSE3 and TARGET_SSE4_1 targets.

    2021-06-10  Uroš Bizjak  <ubizjak@gmail.com>

    gcc/
            PR target/89021
            * config/i386/i386-expand.c (ix86_split_mmx_punpck):
            Handle V2SF mode.  Emit SHUFPS to fixup unpack-high for V2SF mode.
            (expand_vec_perm_blend): Handle 64bit modes for TARGET_SSE4_1.
            (expand_vec_perm_pshufb): Handle 64bit modes for TARGET_SSSE3.
            (expand_vec_perm_pblendv): Handle 64bit modes for TARGET_SSE4_1.
            (expand_vec_perm_interleave2): Handle 64bit modes.
            (expand_vec_perm_even_odd_pack): Handle V8QI mode.
            (expand_vec_perm_even_odd_1): Ditto.
            (ix86_vectorize_vec_perm_const): Ditto.
            * config/i386/i386.md (UNSPEC_PSHUFB): Move from ...
            * config/i386/sse.md: ... here.
            * config/i386/mmx.md (*vec_interleave_lowv2sf):
            New insn_and_split pattern.
            (*vec_interleave_highv2sf): Ditto.
            (mmx_pshufbv8qi3): New insn pattern.
            (*mmx_pblendw): Ditto.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug target/89021] Implement mmintrin.h in SSE
       [not found] <bug-89021-4@http.gcc.gnu.org/bugzilla/>
  2021-06-10 21:56 ` [Bug target/89021] Implement mmintrin.h in SSE cvs-commit at gcc dot gnu.org
@ 2021-06-16 14:08 ` cvs-commit at gcc dot gnu.org
  2021-06-23 14:16 ` cvs-commit at gcc dot gnu.org
  2021-06-24 13:40 ` cvs-commit at gcc dot gnu.org
  3 siblings, 0 replies; 4+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-06-16 14:08 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89021

--- Comment #57 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Uros Bizjak <uros@gcc.gnu.org>:

https://gcc.gnu.org/g:dd835ec24be9b1a89c6b0c78673de88c81a23966

commit r12-1537-gdd835ec24be9b1a89c6b0c78673de88c81a23966
Author: Uros Bizjak <ubizjak@gmail.com>
Date:   Wed Jun 16 16:07:01 2021 +0200

    ii386: Add missing two element 64bit vector permutations [PR89021]

    In addition to V8QI permutations, several other missing permutations are
    added for 64bit vector modes for TARGET_SSSE3 and TARGET_SSE4_1 targets.

    2021-06-16  Uroš Bizjak  <ubizjak@gmail.com>

    gcc/
            PR target/89021
            * config/i386/i386-expand.c (expand_vec_perm_2perm_pblendv):
            Handle 64bit modes for TARGET_SSE4_1.
            (expand_vec_perm_pshufb2): Handle 64bit modes for TARGET_SSSE3.
            (expand_vec_perm_even_odd_pack): Handle V4HI mode.
            (expand_vec_perm_even_odd_1) <case E_V4HImode>: Expand via
            expand_vec_perm_pshufb2 for TARGET_SSSE3 and via
            expand_vec_perm_even_odd_pack for TARGET_SSE4_1.
            * config/i386/mmx.md (mmx_packusdw): New insn pattern.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug target/89021] Implement mmintrin.h in SSE
       [not found] <bug-89021-4@http.gcc.gnu.org/bugzilla/>
  2021-06-10 21:56 ` [Bug target/89021] Implement mmintrin.h in SSE cvs-commit at gcc dot gnu.org
  2021-06-16 14:08 ` cvs-commit at gcc dot gnu.org
@ 2021-06-23 14:16 ` cvs-commit at gcc dot gnu.org
  2021-06-24 13:40 ` cvs-commit at gcc dot gnu.org
  3 siblings, 0 replies; 4+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-06-23 14:16 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89021

--- Comment #58 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Uros Bizjak <uros@gcc.gnu.org>:

https://gcc.gnu.org/g:37e93925366676201b526624e9f8dc32d82b4ff2

commit r12-1746-g37e93925366676201b526624e9f8dc32d82b4ff2
Author: Uros Bizjak <ubizjak@gmail.com>
Date:   Wed Jun 23 16:14:31 2021 +0200

    i386: Add PPERM two-operand 64bit vector permutation [PR89021]

    Add emulation of V8QI PPERM permutations for TARGET_XOP target.  Similar
    to PSHUFB, the permutation is performed with V16QI PPERM instruction,
    where selector is defined in V16QI mode with inactive elements set to 0x80.
    Specific to two operand permutations is the remapping of elements from
    the second operand (e.g. e[8] -> e[16]), as we have to account for the
    inactive elements from the first operand.

    2021-06-23  Uroš Bizjak  <ubizjak@gmail.com>

    gcc/
            PR target/89021
            * config/i386/i386-expand.c (expand_vec_perm_pshufb):
            Handle 64bit modes for TARGET_XOP.  Use indirect gen_* functions.
            * config/i386/mmx.md (mmx_ppermv64): New insn pattern.
            * config/i386/i386.md (unspec): Move UNSPEC_XOP_PERMUTE from ...
            * config/i386/sse.md (unspec): ... here.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug target/89021] Implement mmintrin.h in SSE
       [not found] <bug-89021-4@http.gcc.gnu.org/bugzilla/>
                   ` (2 preceding siblings ...)
  2021-06-23 14:16 ` cvs-commit at gcc dot gnu.org
@ 2021-06-24 13:40 ` cvs-commit at gcc dot gnu.org
  3 siblings, 0 replies; 4+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-06-24 13:40 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89021

--- Comment #59 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Uros Bizjak <uros@gcc.gnu.org>:

https://gcc.gnu.org/g:836328b2c99f5b8d45dcca5797f162af322e74da

commit r12-1789-g836328b2c99f5b8d45dcca5797f162af322e74da
Author: Uros Bizjak <ubizjak@gmail.com>
Date:   Thu Jun 24 15:39:26 2021 +0200

    i386: Add pack/unpack patterns for 64bit vectors [PR89021]

    2021-06-24  Uroš Bizjak  <ubizjak@gmail.com>

    gcc/
            PR target/89021
            * config/i386/i386-expand.c (ix86_expand_sse_unpack):
            Handle V8QI and V4HI modes.
            * config/i386/mmx.md (sse4_1_<any_extend:code>v4qiv4hi2):
            New insn pattern.
            (sse4_1_<any_extend:code>v4qiv4hi2): Ditto.
            (mmxpackmode): New mode attribute.
            (vec_pack_trunc_<mmxpackmode:mode>): New expander.
            (mmxunpackmode): New mode attribute.
            (vec_unpacks_lo_<mmxunpackmode:mode>): New expander.
            (vec_unpacks_hi_<mmxunpackmode:mode>): Ditto.
            (vec_unpacku_lo_<mmxunpackmode:mode>): Ditto.
            (vec_unpacku_hi_<mmxunpackmode:mode>): Ditto.
            * config/i386/i386.md (extsuffix): Move from ...
            * config/i386/sse.md: ... here.

    gcc/testsuite/

            PR target/89021
            * gcc.dg/vect/vect-nb-iter-ub-3.c (dg-additional-options):
            Add --param vect-epilogues-nomask=0.
            * gcc.target/i386/pr97249-1.c (foo): Add #pragma GCC unroll
            to avoid loop vectorization.
            (foo1): Ditto.
            (foo2): Ditto.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-06-24 13:40 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-89021-4@http.gcc.gnu.org/bugzilla/>
2021-06-10 21:56 ` [Bug target/89021] Implement mmintrin.h in SSE cvs-commit at gcc dot gnu.org
2021-06-16 14:08 ` cvs-commit at gcc dot gnu.org
2021-06-23 14:16 ` cvs-commit at gcc dot gnu.org
2021-06-24 13:40 ` cvs-commit at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).