------- Comment #1 from pinskia at gcc dot gnu dot org  2010-03-13 01:35 -------
GCC 4.5 is able to produce pmovzxbw via sse4_1_zero_extendv8qiv8hi2 but it does
not accept a memory operand for operand 1.
        movdqa  x(%rip), %xmm0
        pmovzxbw        %xmm0, %xmm1
        psrldq  $8, %xmm0
        pmovzxbw        %xmm0, %xmm0
        movdqa  %xmm1, y(%rip)
        movdqa  %xmm0, y+16(%rip)
...
Is what GCC currently produces.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
          Component|tree-optimization           |target
     Ever Confirmed|0                           |1
 GCC target triplet|                            |i?86-*-* x86_64-*-*
           Keywords|                            |missed-optimization
   Last reconfirmed|0000-00-00 00:00:00         |2010-03-13 01:35:56
               date|                            |
            Summary|Integer externsions aren't  |Integer externsions
                   |vectorized                  |vectorization could be
                   |                            |improved


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

Reply via email to