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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |4.8.0
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #8 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
For the original testcase.
Starting in GCC 4.8.0 we produce now:

        movl    $7, %ecx
        leal    -1(%edi), %eax
        xorl    %edi, %eax
        sarl    $15, %eax
        subb    ff_h264_norm_shift(%eax), %cl
        sall    %cl, %esi

Which is better and still one less register as you wanted.

So the original issue was fixed in GCC 4.8.

Reply via email to