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

            Bug ID: 107281
           Summary: comparisations with u/int64_t constants not generate
                    vector-result
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: g.peterh...@t-online.de
  Target Milestone: ---

If no 64-bit vector comparisons are available no vectorized results are
produced for the cases <=, >=, <, and >.

The cases == and != works. The comparisons themselves are then carried out
individually, but the result is combined with unpcklqdq.

It would be better if this works with all comparisons so that can better
(auto)vectorized.

It might be possible to further optimize this so that no scalar comparisons are
necessary - especially for the frequent case constant=0.

https://godbolt.org/z/cj8n9TenK

thx
Gero

Reply via email to