6.62.25.3 Базовые встроенные функции PowerPC, доступные в ISA 2.06
Базовые встроенные функции, описанные в этом разделе, доступны на процессорах семейства PowerPC, начиная с ISA 2.05 или более поздней версии. Если не указано иное на командной строке, указание параметра -mcpu=power7 приводит к включению всех тех же параметров, что и для -mcpu=power6, в дополнение к параметрам -maltivec, -mpopcntd и -mvsx.
Следующие базовые встроенные функции требуют -mpopcntd:
unsigned int __builtin_addg6s (unsigned int, unsigned int); long long __builtin_bpermd (long long, long long); unsigned int __builtin_cbcdtd (unsigned int); unsigned int __builtin_cdtbcd (unsigned int); long long __builtin_divde (long long, long long); unsigned long long __builtin_divdeu (unsigned long long, unsigned long long); int __builtin_divwe (int, int); unsigned int __builtin_divweu (unsigned int, unsigned int); vector __int128 __builtin_pack_vector_int128 (long long, long long); void __builtin_rs6000_speculation_barrier (void); long long __builtin_unpack_vector_int128 (vector __int128, signed char);
Из них функции __builtin_divde и __builtin_divdeu требуют 64-разрядную среду.
Следующие базовые встроенные функции, которые также поддерживаются на x86-мишенях, требуют -mfloat128.
__float128 __builtin_fabsq (__float128); __float128 __builtin_copysignq (__float128, __float128); __float128 __builtin_infq (void); __float128 __builtin_huge_valq (void); __float128 __builtin_nanq (void); __float128 __builtin_nansq (void); __float128 __builtin_sqrtf128 (__float128); __float128 __builtin_fmaf128 (__float128, __float128, __float128);
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-14.2.0/gcc/Basic-PowerPC-Built_002din-Functions-Available-on-ISA-2_002e06.html