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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
           See Also|                            |https://gcc.gnu.org/bugzill
                   |                            |a/show_bug.cgi?id=113764

--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
g is optimized in GCC 12+.

f still has issues due to the definedness of 0 for __builtin_clz.

Note f, i and j all produce now:
i(int):
.LFB1517:
        .cfi_startproc
        bsrl    %edi, %eax
        movl    $-1, %edx
        testl   %edi, %edi
        cmove   %edx, %eax
        ret

Which is almost as good as you can get I think due to the undefinedness of 0
for __builtin_clz.

Reply via email to