编译器内置函数

内置函数是 C 和 C++ 的编码扩展,它允许程序员使用 C 函数调用和 C 变量的语法来访问编译机器的处理器的指令集。 IBM Power ® 体系结构具有支持开发高度优化的应用程序的特殊指示信息。 无法使用 C 和 C++ 语言的标准构造来生成对某些 Power 指令的访问权。 其他指令可以通过标准构造生成,但使用内置函数允许精确控制生成的代码。 XL C/C++ V12.1开始,完全支持直接使用这些指示信息的内联组装语言编程。 此外,实现该技术艺可能比较费时。

作为通过组装语言管理硬件寄存器的替代方法, XL C/C++ 内置函数提供对优化的 Power 指令集的访问,并允许编译器优化指令调度。

基于 XL 的前端开始仅限 C + + 开始 要调用C++中的任何 XL C/C++ C++内置函数,必须在源代码中包含头文件 builtins.h

注意: IBM® XL C/C++ for AIX® 16.1 支持的由 xlclang / xlclang++ 调用的内置函数的名称格式为 __builtin_namexlc / xlC 支持的名称格式为 __name。 例如,你应该使用 __builtin_addex 当调用 xlclang/xlclang++__addex 当调用 xlc / xlC 时。 请注意, 向量内置函数 的名称在两个前端相同。

以下部分描述了 AIX 平台的可用内置函数。