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

            Bug ID: 85058
           Summary: Builtin-functions for -mbmi2 documented with wrong
                    names
           Product: gcc
           Version: 8.0
            Status: UNCONFIRMED
          Keywords: documentation
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: redi at gcc dot gnu.org
  Target Milestone: ---
            Target: x86_64-*-*

https://gcc.gnu.org/onlinedocs/gcc/x86-Built-in-Functions.html says:

unsigned int _bzhi_u32 (unsigned int, unsigned int)
unsigned int _pdep_u32 (unsigned int, unsigned int)
unsigned int _pext_u32 (unsigned int, unsigned int)
unsigned long long _bzhi_u64 (unsigned long long, unsigned long long)
unsigned long long _pdep_u64 (unsigned long long, unsigned long long)
unsigned long long _pext_u64 (unsigned long long, unsigned long long)

But those are not the names of the builtins. Those functions are defined in
bmi2intrin.h but the builtins are:

__builtin_ia32_bzhi_si
__builtin_ia32_pdep_si
__builtin_ia32_pext_si
__builtin_ia32_bzhi_di
__builtin_ia32_pdep_di
__builtin_ia32_pext_di

Reply via email to