Built-in functions new for this release

This section lists built-in functions that are new for this release.

For more information about built-in functions provided by XL C/C++, see Compiler built-in functions .

VSX built-in functions

Vector Scalar eXtension (VSX) is newly added for POWER7 processors.

For more information about VSX built-in functions, see Vector built-in functions.

POWER7 prefetch extensions and cache control

The POWER7 processor has cache control and stream prefetch extensions that support store stream prefetch and prefetch depth control. XL C/C++ provides the following new built-in functions to provide direct programmer access to these instructions:
  • __protected_stream_stride
  • __transient_protected_stream_count_depth
  • __unlimited_protected_stream_depth
  • __transient_unlimited_protected_stream_depth
  • __partial_dcbt
  • __dcbtt
  • __dcbtstt
  • __dcbflp

The compiler can insert the built-in functions automatically when it optimizes the code. You can disable automatic use of these instructions with -qnoprefetch.

For more information about the directives, see built-in functions .

POWER7 hardware built-in functions

New XL C/C++ built-in functions corresponding to each new POWER7 hardware instruction are added in this release. With these functions, you can directly manipulate specific hardware instructions in your code, which can improve the performance of your application.

Conversion functions

These new functions convert between Declets and Binary Coded Decimal.
  • __cbcdtd
  • __cdtbcd

Comparison functions

This new function compares bytes.
  • __cmpb

Decimal floating-point functions

This new function adds and generates sixes.
  • __addg6s