这一节将重点介绍 XL C/C for Linux 新增功能中的一小部分。有关新功能的完整列表,请参阅安装 XL C/C 时提供的 Getting Started with XL C/C 。
性能和优化
- 对选项
-qarch和-qtune的优化。把对 POWER5 和 POWER 970 架构的支持添加到选项-qarch和-qtune中。
例如:
-qarch=pwr5, -qarch=ppc970, -qtune=pwr5, -qtune=ppc970 - 通过
–qaltivec(仅 POWER 970)和–qenablevmx支持 Vector Multimedia Extensions (VMX)。 - 随编译器提供了 IBM Mathematics Acceleration Subsystem (MASS) 向量库。向量库是线程安全的,通过相应的 libm 例程提供改善的性能。
符合行业标准
- 对于 C、C 和 Fortran,XL C/C 支持 OpenMP API V2.0。
- 在版本 7 中,用 XL C/C 实现了更多的 GNU gcc 和 gcc 扩展。(有关的完整列表,请参见 Getting Started with XL C/C 中的表。)
- 增强的 Unicode 和 NLS 支持。添加了新数据类型以支持 UTF-16 和 UTF-32。
新功能
- gxlc 和 gxlc Utilities。他们是一些调用方法,将 GNU gcc 或 gcc-c 调用命令转换为相应 xlc 或 xlc 命令以调用 XL C/C 编译器。
要使用 gcc
–ansi选项来编译 Hello World 程式的 C 版本,能够使用:
gxlc -ansi hello.c
其转换为:
xlc –F:c89 hello.c然后使用此命令来调用 XL C 编译器。
gxlc 和 gxlc 有助于最大程度地减少对使用 GNU 编译器构建的现有应用程式的 makefile 的更改。他们支持 GCC 选项的主要部分,配置文档 gxlc.cfg 控制他们的操作。对于未转换的输入选项,gxlc 和 gxlc 将返回警告。虽然 gxlc 和 gxlc 方便了到 XL C/C 的转换,从而能够充分使用 XL C/C 的功能,但我们建议您使用 XL C/C 调用方法及其相关选项。
- XL C/C 将版本信息添加到创建的模板注册文档中。编译器在内部使用这条信息来跟踪应该使用的模板注册文档格式的版本。
- 为编译器调用命令和每个命令行实用程式都提供了手册页。
编译器模式
XL C/C 的默认位置是 /opt/ibmcmp。XL C/C 包含各种调用命令。每个命令都有相应的线程安全版本。构建多线程应用程式时,要使用线程安全版本(除了 gxlc 和 gxlc )。下表显示了可用调用命令。
表 1. 可用调用命令




