[Bug target/59874] Missing builtin (__builtin_clzs) when compiling with g++

ubizjak at gmail dot com gcc-bugzilla@gcc.gnu.org
Sun Oct 30 13:15:00 GMT 2016


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

--- Comment #3 from Uroš Bizjak <ubizjak at gmail dot com> ---
(In reply to Manuel Lauss from comment #2)

> I've run into this issue with current gcc-6-branch while building for
> example qt-5.7.  gcc-5-branch can build this source just fine:

__builtin_clzs and __builtin_ctzs are internal x86 builtins and were recently
removed. You should use __lzcnt16 and __tzcnt_u16 intrinsics.

>     return v ? __builtin_ctzs(v) : 16U;
>      return v ? __builtin_clzs(v) : 16U;

You don't need this, the instruction does exactly the above.


More information about the Gcc-bugs mailing list