Home » IBM » IBM Software » Rational » XL C C++ for zVM
IBM

XL C C++ for zVM

Features and benefits

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

At a glance - What's new for V1.2

XL C/C++ for z/VM, V1.2 introduces the following new enhancements:

  • Support for the C99 programming standard
  • A higher OPTIMIZE(3) optimization level
  • ARCH(4) and TUNE(4) compiler options to control the code being generated by the compiler
  • Improved optimization with the High Order Transformation (HOT) option and aligned keyword

Support for the C99 programming standard

The ISO/IEC 9899:1999 (C99) international standard specifies the form and establishes the interpretation of programs written in the C programming language. Not all run-time functions and facilities required by the C99 standard are supported on all the operating system levels that can run this version of the compiler. The availability of system header files provides an indication of the support.

The C99 standard offers a number of additional language functions including:

  • long long
  • bool
  • pragma operator
  • initializer allow con
  • empty new argument
  • macro with variable number of args
  • inline function specifier
  • complex

C++ Standard Library

The C++ Standard Library includes the following:

  • The C++ Standard I/O Stream Library for performing input and output (I/O) operations
  • The C++ Standard Complex Mathematics Library for manipulating complex numbers
  • The STL which is composed of C++ template-based algorithms, container classes, iterators, localization object, and the string class

The UNIX System Laboratories I/O Stream and Complex Mathematics libraries are included with C/C++ for z/VM. For new code and enhancements to existing applications, the Standard C++ Library should be used.

OPTIMIZE(3)

XL C/C++ z/VM V1.2 introduces the new and higher optimization level OPTIMIZE(3)or OPT(3). OPT(3) provides the compiler's highest and most aggressive level of optimization. OPT(3) is recommended when the desire for run-time improvement outweighs the concern for minimizing compilation resources. OPT(3) introduces additional options and pragmas to help programmers improve their application performance including the loop unrolling option and pragmas and a number of new built-in functions. Using the OPT(0), OPT(2) and OPT(3) options, you can obtain optimization levels that run from comprehensive low-level optimizations to more extensive optimizations.

HIGH ORDER TRANSFORMATION (HOT)

The new HOT option allows for high-order transformations, which are optimizations that specifically improve performance for loops through techniques such as interchange, fusion and unrolling.

LANGLVL compiler option

The LANGLVL compiler option has been enhanced to support all of the available language levels that you can use to compile your code within XL C/C++ for z/VM. Your code can conform to the latest C99 standard, use language extensions to C99, or conform to the previous C89 standard. XL C/C++ for z/VM offers you the flexibility to compile your code to the language level that you require.

_attribute _ aligned(n) keyword

A new keyword is introduced to specify the alignment of a variable. This will help improve performance and aid in the porting of applications to z/VM.

Additional C and C++ Features

When used with Language Environment®, the XL C and XL C++ compilers of XL C/C++ for z/VM offer many other features to enhance your programming:

  • Dynamic link libraries (DLLs) to share parts among applications or parts of applications, and dynamically link to exported variables and functions at run time. You can use DLLs to split applications into smaller modules and improve system memory usage. DLLs also offer more flexibility for building, packaging, and redistributing applications.
  • Full program reentrancy which will allow many users to simultaneously run a program.
  • The INLINE compiler option which gives you additional optimization capabilities.
  • Locale-based internationalization support derived from the IEEE POSIX 1003.2-1992 standard and the X/Open CAE Specification, System Interface Definitions, Issue 4 and Issue 4 Version 2. This allows programmers to use locales to specify language/country characteristics for their applications.
  • The ability to call and be called by other languages such as assembler, COBOL, and PL/I. z/VM programmers can integrate C/C++ code with existing applications.

All products within the Rational category

Contact us today for more information

  • or call: 0345 230 1055
  • * Required fields
  • Nature of your Enquiry (any additional details)
  • I have read & agree to the Privacy Policy *
 

Featured resources for XL C C++ for zVM


Latest News

Oracle Fighting to Keep Linux Open and Free 30/08/2023

Oracle has just released a statement by...

ACARDIA LIMITED 12th Floor, Ocean House, The Ring, Bracknell, Berkshire RG12 1AX. United Kingdom.