IBM XL C/C++ for z/VM
适用于 z/VM 平台的高级优化编译器
抽象几何V 形图案的插图

IBM® XL C/C++ for z/VM 是一款优化编译器,专为开发大型、复杂、计算密集型应用程序而设计。它支持编写针对 IBM Z Systems 硬件优化的 C 和 C++ 应用程序。

IBM XL C/C++ for z/VM 是 z/VM 平台上以语言为中心的 C/C++ 应用程序开发环境。它是支持 z/VM 的 z/OS XL C/C++ 版本,其中包括 C/C++ 编译器组件(称为 XL C/C++ 编译器)和一些 C/C++ 应用程序开发实用程序。

XL C/C++ for z/VM 1.3 用户和实施指南

优势 优化应用程序性能

支持高阶转换,此类优化可提高循环性能;还支持 OPTIMIZE(3),或称 OPT(3),这是编译器最高、最强的优化级别。

轻松迁移应用程序

符合 ISO/IEC 9899:1999 国际标准 (C99) 和 ANSI/ISO 1998 C++ 标准,提供符合标准的 C 编译器并包含 C++ 标准库。

简化应用程序的移植

支持行业标准,以简化应用程序从 IBM 和非 IBM 平台向 z/VM 的移植。

功能
广泛优化

OPT(3) 支持引入了额外的选项和编译器指示,有助于提高应用程序性能,包括循环展开选项和编译器指示以及一些新的内置函数。使用 OPT(0)、OPT(2) 和 OPT(3) 选项,可以获得从全面的低级优化到更广泛优化的各种优化级别。


C++ 标准库

IBM XL C/C++ for z/VM 包括:用于执行输入和输出 (I/O) 操作的 C++ 标准 I/O 流库;用于操作复数的 C++ 标准复杂数学库;以及由以下部分组成的标准模板库 (STL):基于 C++ 模板的算法、容器类、迭代器、本地化对象和字符串类。


Unicode 文字支持

IBM XL C/C++ for z/VM 在 C 中通过类型定义增加了对 char16_t 和 char32_t 类型的支持,而在 C++ 中这些类型是原生类型,因此使用这些类型的代码更容易移植到 z/OS。


与 GNU Compiler Collection (GCC) 兼容

其中包含的 C 语言对语句表达式结构体的支持,使程序员能够在表达式中使用循环、开关和局部变量。C 和 C++ 支持将零长度数组结构体作为可变长度对象的头部。这些功能使得其他平台上使用这些结构体的 C/C++ 代码可以更轻松地移植到 XL C/C++ for z/VM。


更深入的指针分析

RESTRICT 选项告知编译器,所有函数或指定函数中的参数指针互不干涉。当 RESTRICT 选项有效时,编译器会执行更深入的指针分析。目的是提高正在编译的应用程序的性能。


保存的选项字符串功能

IBM XL C/C++ for z/VM 提供用于每个源文件的编译器选项的紧凑表示,并在可执行文件中为每个编译单元创建所保存的选项字符串。编译器会记录编译期间处于活动状态的所有组件的版本信息。这项新功能可以帮助诊断运行时问题。


支持修改消息严重性

SEVERITY 选项允许更改编译器发出的某些诊断消息的严重性。此功能可根据用户的编码标准定制某些诊断信息级别。


支持调试

编译器生成的源列表得到增强,每个函数的起始偏移量添加到列表中。每个函数的起始偏移量预计有助于调试。对于使用优化级别 O2 或 O3 编译的代码,调试优化代码时可以显示函数的名称和地址以及参数的名称、类型和值。

资源 IBM:z/VM 语言环境

了解 z/VM 语言环境概况。

IBM XL C/C++ for z/VM 的其他功能

通过技术说明深入了解 IBM XL C/C++ for z/VM 的其他功能。

XL C/C++ for z/VM 与 z/OS XL C/C++ 的区别

了解在 XL C/C++ for z/VM 中不受支持或工作方式不同的 z/OS XL C/C++ 编译器功能。

相关产品 IBM z/OS IBM z/OS XL C/C++

利用最新的 z/Architecture®,包括最新的 IBM z15™ 服务器。

IBM XL C/C++ for Linux

用于开发复杂的 C/C++ 程序的高性能编译器。

探索 IBM C 和 C++ 编译器系列
后续步骤

深入了解 IBM XL C/C++ for z/VM。安排与 IBM Z 代表进行 30 分钟的免费会议。

更多探索方式 文档 支持 IBM Redbooks 支持与服务 全球融资 灵活定价 教育与培训 社区 开发者社区 业务合作伙伴 资源