手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网站运营>建站经验>列表

如何在 POWER 上使用 IBM XL C/C Advanced Edition V7.0

来源:互联网 作者:west263.com 时间:2008-04-16
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!
版本 7 中的新功能
这一节将重点介绍 XL C/C for Linux 新增功能中的一小部分。有关新功能的完整列表,请参阅安装 XL C/C 时提供的 Getting Started with XL C/C

性能和优化

  1. 对选项 -qarch-qtune 的优化。把对 POWER5 和 POWER 970 架构的支持添加到选项 -qarch-qtune 中。

    例如:


    -qarch=pwr5, -qarch=ppc970, -qtune=pwr5, -qtune=ppc970

  2. 通过 –qaltivec(仅 POWER 970)和 –qenablevmx 支持 Vector Multimedia Extensions (VMX)。
  3. 随编译器提供了 IBM Mathematics Acceleration Subsystem (MASS) 向量库。向量库是线程安全的,通过相应的 libm 例程提供改善的性能。

符合行业标准

  1. 对于 C、C 和 Fortran,XL C/C 支持 OpenMP API V2.0。
  2. 在版本 7 中,用 XL C/C 实现了更多的 GNU gcc 和 gcc 扩展。(有关的完整列表,请参见 Getting Started with XL C/C 中的表。)
  3. 增强的 Unicode 和 NLS 支持。添加了新数据类型以支持 UTF-16 和 UTF-32。

新功能

  1. 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 调用方法及其相关选项。

  2. XL C/C 将版本信息添加到创建的模板注册文档中。编译器在内部使用这条信息来跟踪应该使用的模板注册文档格式的版本。
  3. 为编译器调用命令和每个命令行实用程式都提供了手册页。

编译器模式
XL C/C 的默认位置是 /opt/ibmcmp。XL C/C 包含各种调用命令。每个命令都有相应的线程安全版本。构建多线程应用程式时,要使用线程安全版本(除了 gxlcgxlc )。下表显示了可用调用命令。

表 1. 可用调用命令

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

调用命令 线程安全变量 描述
xlC 或 xlc xlC_r 或 xlc _r 源文档作为 C 代码进行编译
xlc xlc_r 源文档作为 C 代码进行编译。该模式包含下列编译器选项:-qlanglvl=extc89-qalias=ansi-qcpluscmt-qkeyword=inline
c89 c89_r 编译器执行 ISO C89 标准。此调用包含下列编译器选项:-qlanglvl=stdc89, -qalias=ansi-qstrict_induction-qnolonglong-D_ANSI_C_SOURCE-D__STRICT_ANSI__
c99 c99_r 编译器执行 ISO C99 标准。此调用包含下列编译器选项:-qlanglvl=stdc99-qalias=ansi-qstrict_induction-D_ANSI_C_SOURCE-D_ISOC99_SOURCE-D__STRICT_ANSI__
cc cc_r 用于无需遵守 C89 和 C99 的遗留 C 代码。此调用包含下列编译器选项:-qlanglvl=extended-qnoro-qnoroconst
xlCcore 或 xlc core XlCcore_r 或 xlc core_r xlCxlc 相同,但是编译器将仅链接到运行时库的内核。假如想将应用程式链接到其他运行时库,而不是链接到随 XL C/C 一起提供的运行时库,那么能够使用这个调用
Google