[PATCH] D87974: [Builtin] Add __builtin_zero_non_value_bits.

Billy Robert O'Neal III via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Sun Dec 6 14:48:25 PST 2020


BillyONeal added a comment.

In D87974#2432793 <https://reviews.llvm.org/D87974#2432793>, @zoecarver wrote:

> So, it looks like GCC already uses `__builtin_clear_padding` and MSVC already uses `__builtin_zero_non_value_bits`. This patch (obviously) is currently implementing `__builtin_zero_non_value_bits ` but, I had planned to update it to use `__builtin_clear_padding`. Maybe that's not the best course of action, though.
>
> We should all try to agree on _one_ name. CC @BillyONeal @jwakely thoughts?

The name MSFT is already shipping in production is `__builtin_zero_non_value_bits`. If gcc is already shipping another name in production I think clang is stuck supporting both names, if gcc has not yet shipped their implementation perhaps we can choose one. That seems to be more on gcc than it is on clang given clang's desire to be more or less a drop in replacement for either gcc or msvc.

The MSFT STL implementation can of course use a different builtin when we detect clang.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D87974/new/

https://reviews.llvm.org/D87974



More information about the cfe-commits mailing list