What is the builtin for _mm_sha256rnds2_epu32?

Jeffrey Walton noloader@gmail.com
Tue Apr 18 08:39:00 GMT 2017

On Tue, Apr 18, 2017 at 4:32 AM, Marc Glisse <marc.glisse@inria.fr> wrote:
> On Tue, 18 Apr 2017, Jeffrey Walton wrote:
>> I'm having trouble locating the builtin functions for the SHA
>> extensions. The 5.4 and 6.3 docs do not list them. (See, for example,
>> https://gcc.gnu.org/onlinedocs/gcc-6.3.0/gcc/x86-Built-in-Functions.html#x86-Built-in-Functions).
>> What are the builtin functions for the various SHA extensions, like
>> _mm_sha256rnds2_epu32?
> Uh, open the file shaintrin.h and see what builtins are used there? Why are
> you looking at the builtins anyway? I can see why people use intrinsics, or
> why they use inline asm, but not builtins.


We can't use intrinsics because they are only available when -msha is
used during compile. Some compilers don't add the necessary flags,
even with -march=native. Some users and distros don't add that flag.
Also see GCC Issue 57202.


More information about the Gcc-help mailing list