[clang] [clang]Implement the c23 stdc bit builtins (PR #185978)
Michael Jones via cfe-commits
cfe-commits at lists.llvm.org
Mon Apr 6 13:27:13 PDT 2026
michaelrj-google wrote:
> > Typically we don't bother to implement these unless libc starts using these, or needs them. Making builtins for these functions without the library needs them is kinda silly.
> > DO we have a request for these coming from the libc maintainers?
>
> I think they're important for two reasons: 1) we're going to want constexpr support for these for the same reason we want constexpr support for `strlen` in C so defining them as recognized library builtins is the way we do that, and 2) I think libc is going to want to have full support for bit-precise integer types and that's easier to support from a builtin currently. That said, CC @michaelrj-google for additional opinions
>From the libc side having these builtins would be handy for both of the reasons Aaron mentioned. For optimization it would be helpful if the compiler could replace the libcall with a builtin, since things like `leading_zeros` can sometimes be reduced to a single instruction. Actually calling these bit functions as functions is unlikely to be optimal.
CC: @enh-google
https://github.com/llvm/llvm-project/pull/185978
More information about the cfe-commits
mailing list