Feedback

IBM XL C/C++ for z/VM , V1.3 delivers performance improvements and additional C++ standards support

IBM United States Software Announcement 211-369
October 12, 2011


Table of contents
Overview Overview Technical information Technical information
Key prerequisites Key prerequisites Ordering information Ordering information
Planned availability date Planned availability date Publications Publications
Description Description Terms and conditions Terms and conditions
Product positioning Product positioning Prices Prices
Program number Program number Order
now Order now


Top rule
Overview
Bottom rule

XL C/C++ for z/VM®, V1.3 is an advanced optimizing compiler for the z/VM platform. Based on industry standards, this professional programming tool can be used for developing large, complex, computationally intensive applications. XL C/C++ for z/VM includes a C compiler and a C++ compiler giving you the flexibility to write both C and C++ applications or to extend existing C applications using C++.

What's new in XL C/C++ for z/VM, V1.3

  • Delivers performance improvements for faster XL C/C++ applications.
  • Provides additional features to support the advancement of the Standard C++ Library Standard and C++ Language Standard including support for part of the new draft C++0x standard.
  • Includes enhancements to help you with productivity and porting.
  • Includes new and changed compiler options, compiler suboptions, and macros.
  • Introduces serviceability enhancements to help you diagnose runtime problems.
  • Provides additional debug support especially to help you debug optimized code.

XL C/C++ for z/VM, V1.3 brings a highly productive and powerful object-oriented development environment to z/VM programmers.

For ordering, contact your IBM® representative, an IBM Business Partner, or IBM Americas Call Centers at 800-IBM-CALL (Reference: LE001).



Back to topBack to top
 
Top rule
Key prerequisites
Bottom rule

z/VM V6.2, or later



Back to topBack to top
 
Top rule
Planned availability date
Bottom rule

December 2, 2011



Back to topBack to top
 
Top rule
Description
Bottom rule

XL C/C++ for z/VM is a highly productive and powerful development environment for building C and C++ applications. This compiler is a critical element because more customer business applications, customer server applications, ISV applications, and IBM middleware programs are now being written in both C and C++.

XL C/C++ for z/VM, V1R3 continues to provide additional functionality and enhancements.

Performance improvements

  • Additional optimization and tuning improvements are made for the compiler including inlining of additional destructors to avoid overhead of function calls. These changes can improve the performance of generated code without the need for changes to the source code.
  • Implicit RESTRICT support - The RESTRICT option indicates to the compiler that parameter pointers in all functions or in specified functions are disjoint. When the RESTRICT option is in effect, deeper pointer analysis is done by the compiler. This is intended to improve the performance of the application being compiled.
  • Performance improvements to the Standard C++ Library particularly with global placement new operators and the implementation of vector template class.

Standards enhancements

  • The Standard C++ Library includes enhancements based on the ISO document ISO/IEC TR 19768-Technical Report on C++ Library Extension, for improved portability of source code from other platforms.
  • XL C/C++ for z/VM, V1.3 supports parts of the ISO/IEC TR 19768:2007, Technical Report on C++ Library Extensions. The XL C/C+ compiler also supports parts of the ISO/IEC JTC1/SC22/WG21 draft of a new C++ language standard, commonly referred to as C++0x. Features supported include Extended Friend Declarations, Extern Template, and Name Lookup in Template Base Class. Support of standards by the XL C/C++ compiler is intended to make it easier to port C++ code from other platforms to z/VM

Productivity and porting support

  • In XL C/C++ for z/VM, V1.3 functionality to address customer requirements includes Unicode Literal support. This adds support for the char16_t and char32_t types through the use of typedefs in C and as native types in C++ and makes it easier to port code exploiting these types to z/OS®.
  • In XL C/C++ for z/VM, V1.3 the XL C/C++ compiler adds additional support for source code compatibility with the GNU Compiler Collection (GCC), including C support for the statement expression construct to allow programmers to use loops, switches, and local variables within an expression, and C and C++ support for the zero-extent array construct as a header for a variable-length object. These features make it easier to port C/C++ code using these constructs on other platforms to XL C/C++ for z/VM.

New compiler options, compiler suboptions, and macros

  • New compiler options include:
    • SHOWMACROS, to display macro definitions for debugging complex macro expansions in application programs
    • SKIPSRC, for excluding source statements from the listing to improve readability of the compiler listings
  • XL C/C++ for z/VM, V1.3 introduces the following new compiler suboptions:
    • INFO(ALS)
    • KEYWORD(typeof)for C source code
    • LANGLVL(AUTOTYPEDEDUCTION | C99LONGLONG | C99PREPROCESSOR | DECLTYPE | DELEGATINGCTORS | EXTENDEDINTEGERSAFE | INLINENAMESPACE | STATIC_ASSERT | VARARGMACROS | VARIADICTEMPLATES)
    • NAMEMANGLING(zOSV1R12_ANSI)
    • TARGET(zOSV1R12)
  • XL C/C++ for z/VM, V1.3 introduces the following new macros:
    • __IBMCPP_AUTO_TYPEDEDUCTION (C++ only)
    • __IBMCPP_C99_LONG_LONG (C++ only)
    • __IBMCPP_C99_PREPROCESSOR (C++ only)
    • __IBMCPP_DECLTYPE (C++ only)
    • __IBMCPP_DELEGATING_CTORS (C++ only)
    • __IBMCPP_INLINE_NAMESPACE (C++ only)
    • __IBMCPP_STATIC_ASSERT (C++ only)
    • __IBMCPP_VARIADIC_TEMPLATES (C++ only)
  • New pragma directives - XL C/C++ for z/VM, V1.3 introduces the new suboption zosv1r12_ansi to the option NAMEMANGLING and to the language construct #pragma namemangling. The linkage errors caused by any future changes in the mangling scheme can be resolved by recompiling the new modules using the same mangling scheme that was used in the already-compiled modules, zOSV1R12_ANSI.

Serviceability enhancements

  • The new Saved Option String feature provides a compact representation of compiler options used for each source file and creates the saved options string in the executable for each compilation unit. The compiler will also record version information for all compiler components that were active during the compilation. This new feature can help you in diagnosing run-time problems.
  • Message severity modification support - XL C/C++ for z/VM, V1.3 adds support for the SEVERITY option, to allow changing the severity of some of the diagnostic messages emitted by the compiler. This feature allows customization of certain diagnostic message levels to the coding standards of the user.

Debug support

  • Source listings generated by the XL C/C++ compiler are enhanced to add the starting offset of each function to the listings. The starting offset of each function is expected to be helpful for debugging purposes.
  • Functions and parameters displayed for optimized code - For compiled code using optimization level O2 or O3, the names and addresses of functions and the names, types, and values of the parameters can be displayed when you debug optimized code.

Accessibility by people with disabilities

A US Section 508 Voluntary Product Accessibility Template (VPAT) containing details on accessibility compliance can be requested at

http://www.ibm.com/able/product_accessibility/index.html

Section 508 of the US Rehabilitation Act

IBM XL C/C++ for z/VM, V1.3 is capable as of December 2, 2011, when used in accordance with associated IBM documentation, of satisfying the applicable requirements of Section 508 of the Rehabilitation Act, provided that any assistive technology used with the product properly interoperates with it. A US Section 508 Voluntary Product Accessibility Template (VPAT) can be requested on the following website

http://www.ibm.com/able/product_accessibility/index.html


Back to topBack to top
 
Top rule
Product positioning
Bottom rule

XL C/C++ for z/VM is part of an IBM family of C and C++ compilers that supports all of the major platforms of IBM. It joins XL C/C++ for z/OS on zSeries®, XL C/C++ for AIX® on the pSeries®, XL C/C++ for Linux™ on the pSeries, ILE C/C++ for OS/400® on the iSeries®, and XL C/C++ Advanced Edition for Blue Gene/L™ and Blue Gene/P™ (IBM supercomputers). The code base for all of these compilers is the same making source-level portability among these platforms easier than ever before.



Back to topBack to top
 
Top rule
Hardware and software support services
Bottom rule

SmoothStart/installation services

IBM SmoothStart Services and Installation Services are not provided.



Back to topBack to top
 
Top rule
Program number
Bottom rule

Program                         Program
name                            number
 
XL C/C++ for z/VM, V1.3         5654-A22
 

Business Partner information

If you are a Direct Reseller - System Reseller acquiring products from IBM, you may link directly to Business Partner information for this announcement. A PartnerWorld® ID and password are required (use IBM ID).

https://www.ibm.com/partnerworld/mem/sla.jsp?num=211-369


Back to topBack to top
 
Top rule
Technical information
Bottom rule

Specified operating environment

Hardware requirements

XL C/C++ for z/VM V1.3 and its generated object code can be executed on any zSeries server supported by z/VM V6.2, or later. The C/C++ for z/VM compiler will only execute on z/VM V6.2, or later and can only be licensed to operate on standard processor engines.

Software requirements

Required licensed programs --z/VM V6.2, or later

Security, auditability, and control

The announced program uses the security and auditability features of the host operating system software. The customer is responsible for evaluation, selection, and implementation of security features, administrative procedures, and appropriate controls in application systems and communication facilities.



Back to topBack to top
 
Top rule
Ordering information
Bottom rule

Order VM SDO and VSE SIPO through the Internet

ShopzSeries provides an easy way to plan and order System z® software upgrades. This now includes VM and VSE. Using ShopzSeries, you can quickly generate orders for VM SDOs and VSE SIPOs. Additionally, ShopzSeries will ensure your order is technically correct (that is, ensures any co-req or pre-req or incompatibility conditions are resolved to ensure timely order placement and processing). ShopzSeries is available in the United States and several countries in Europe. In countries where ShopzSeries is not available yet, contact your IBM representative (or IBM Business Partner) to handle your order via the traditional IBM ordering process. For more details and availability, visit the ShopzSeries Website at

http://www.ibm.com/software/ShopzSeries

Current licensees

Current licensees of IBM XL C/C++ for z/VM V1.2 must order this release via MES.

New licensees

Orders for new licenses can be placed now.

Registered customers can access IBMLink for ordering information and charges.

Shipment will begin on the planned availability date.

  • Orders that ship before the planned availability will receive XL C/C++ for z/VM, V1.2.
  • Orders that ship after the planned availability date will receive XL C/C++ for z/VM, V1.3.
  • The previous release, XL C/C++ for z/VM, V1.2, is therefore withdrawn from marketing and being replaced by XL C/C++ for z/VM, V1.3

New users of XL C/C++ for z/VM, V1.3 should specify: Type: 5654 Model: A22.

Note: XL C/C++ for z/VM, V1.3 may also be ordered using the z/VM V6.2 SDO packaged offering, program number (5741-A08), after November 28, 2011.

For additional information on IBM z/VM V6.2, refer to Software Announcement 211-409, dated October 12, 2011.

For ordering information on IBM XL C/C++ for z/VM Version 1, refer to Software Announcement 203-129, dated May 13, 2003.

Basic machine-readable material

In conjunction with the availability of XL C/C++ for z/VM, V1.3, the following tape media is now supported:

                               Orderable   
 Environment                   Supply ID       Distribution medium

 XL C/C++ for z/VM, V1.3       S0156G6         3590 tape cartridge
 
 XL C/C++ for z/VM, V1.3       S0156G7         3592 tape cartridge
 
 


Back to topBack to top
 
Top rule
Publications
Bottom rule

Refer to the IBM Publications Center website for more information about publication ordering.

http://www.ibm.com/shop/publications/order


Back to topBack to top
 
Top rule
Terms and conditions
Bottom rule

The terms for IBM XL C/C++ for z/VM, V1 licensed under the IBM Customer Agreement are unaffected by this announcement.

For additional information on IBM XL C/C++ for z/VM Version 1, refer to Software Announcement 203-129, dated May 13, 2003.

IBM Operational Support Services - SupportLine

No



Back to topBack to top
 
Top rule
IBM Electronic Services
Bottom rule

IBM has transformed its delivery of hardware and software support services to help you achieve higher system availability. Electronic Services is a Web-enabled solution that offers an exclusive, no-additional-charge enhancement to the service and support available for IBM servers. These services are designed to provide the opportunity for greater system availability with faster problem resolution and preemptive monitoring. Electronic Services comprises two separate, but complementary, elements: Electronic Services news page and Electronic Services Agent.

The Electronic Services news page is a single Internet entry point that replaces the multiple entry points traditionally used to access IBM Internet services and support. The news page enables you to gain easier access to IBM resources for assistance in resolving technical problems.

The Electronic Service Agent™ is no-additional-charge software that resides on your server. It monitors events and transmits system inventory information to IBM on a periodic, client-defined timetable. The Electronic Service Agent automatically reports hardware problems to IBM. Early knowledge about potential problems enables IBM to deliver proactive service that may result in higher system availability and performance. In addition, information collected through the Service Agent is made available to IBM service support representatives when they help answer your questions or diagnose problems. Installation and use of IBM Electronic Service Agent for problem reporting enables IBM to provide better support and service for your IBM server.

To learn how Electronic Services can work for you, visit

http://www.ibm.com/support/electronic


Back to topBack to top
 
Top rule
Prices
Bottom rule

The pricing information for XL C/C++ for z/VM V1, as previously announced in Software Announcement 203-129, dated May 13, 2003, remains unaffected by this announcement.

Contact your IBM representative for information on the current prices for this program.

For additional product information, refer to Software Announcement 203-129, dated May 13, 2003.



Back to topBack to top
 
Top rule
Order now
Bottom rule

To order, contact the Americas Call Centers or your local IBM representative, or your IBM Business Partner.

To identify your local IBM representative or IBM Business Partner, call 800-IBM-4YOU (426-4968).

Phone:      800-IBM-CALL (426-2255)
Fax:        800-2IBM-FAX (242-6329)
Internet:   callserv@ca.ibm.com
Mail:       IBM Teleweb Customer Support
            ibm.com® Sales Execution Center, Americas North
            3500 Steeles Ave. East, Tower 3/4
            Markham, Ontario
            Canada
            L3R 2Z1

Reference: LE001

The Americas Call Centers, our national direct marketing organization, can add your name to the mailing list for catalogs of IBM products.


Note: Shipments will begin after the planned availability date.
Trademarks

Blue Gene/L, Blue Gene/P and Electronic Service Agent are trademarks of IBM Corporation in the United States, other countries, or both.

z/VM, IBM, z/OS, zSeries, AIX, pSeries, OS/400, iSeries, PartnerWorld, System z and ibm.com are registered trademarks of IBM Corporation in the United States, other countries, or both.

Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both.

Other company, product, and service names may be trademarks or service marks of others.

Terms of use

IBM products and services which are announced and available in your country can be ordered under the applicable standard agreements, terms, conditions, and prices in effect at the time. IBM reserves the right to modify or withdraw this announcement at any time without notice. This announcement is provided for your information only. Additional terms of use are located at:

http://www.ibm.com/legal/us/en/

For the most current information regarding IBM products, consult your IBM representative or reseller, or visit the IBM worldwide contacts page

http://www.ibm.com/planetwide/us/

Terms of use