public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/54346] New: combine permutations
@ 2012-08-21 14:02 glisse at gcc dot gnu.org
  2021-08-25  7:26 ` [Bug tree-optimization/54346] " pinskia at gcc dot gnu.org
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: glisse at gcc dot gnu.org @ 2012-08-21 14:02 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54346

             Bug #: 54346
           Summary: combine permutations
    Classification: Unclassified
           Product: gcc
           Version: 4.8.0
            Status: UNCONFIRMED
          Severity: enhancement
          Priority: P3
         Component: tree-optimization
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: glisse@gcc.gnu.org


Hello,

when we have two VEC_PERM_EXPR with constant mask, where one is the only user
of the result of the other one, it would be good to compose/merge them into a
single VEC_PERM_EXPR. However, it is too hard for backends to always generate
optimal code for shuffles, so we want to do the optimization only if we know it
actually helps. Currently this means when the composed permutation is the
identity. In the future, it could mean asking the backend.

See the conversation that started at:
http://gcc.gnu.org/ml/gcc-patches/2012-08/msg00676.html

and around this message for cost hooks (which could also help the vectorizer):
http://gcc.gnu.org/ml/gcc-patches/2012-08/msg00973.html

Related bug is http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43147 but that one
is about RTL (unless x86 eventually follows ARM and decides to implement _mm_*
functions in terms of __builtin_shuffle).


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

end of thread, other threads:[~2022-10-25  5:53 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-08-21 14:02 [Bug tree-optimization/54346] New: combine permutations glisse at gcc dot gnu.org
2021-08-25  7:26 ` [Bug tree-optimization/54346] " pinskia at gcc dot gnu.org
2021-08-25  9:02 ` pinskia at gcc dot gnu.org
2022-06-07  9:10 ` crazylht at gmail dot com
2022-10-11  6:12 ` cvs-commit at gcc dot gnu.org
2022-10-11  6:21 ` glisse at gcc dot gnu.org
2022-10-11  6:36 ` crazylht at gmail dot com
2022-10-21  7:17 ` cvs-commit at gcc dot gnu.org
2022-10-25  5:53 ` crazylht at gmail dot com

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).