Some built-in functions were added in Version 9.0.
For more information on built-in functions
provided by XL C/C++,
see "Compiler built-in functions".
Conversion functions
These new functions
convert long double data types from IBM® style
to GCC style.
- long double __ibm2gccldbl (long double);
- _Complex long double __ibm2gccldbl_cmplx (_Complex long
double);
.
PowerPC cache
control
The PowerPC® architecture
specifies the
dcbst and
dcbf cache
copy instructions. The following new
built-in functions provide
direct programmer access to these instructions.
- void __dcbst(const void* addr); /* Data Cache Block
Store */
- void __dcbf(const void* addr); /* Data Cache Block
Flush */
POWER6 prefetch
extensions and cache control
The POWER6™ processor has cache control and stream
prefetch extensions with support for 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.
- void __dcbfl(const void* addr); /* pwr6 - Data Cache
Block Flush from L1 data cache only */
- void __protected_unlimited_stream_set(unsigned int direction,
const void* addr, unsigned int ID); /* Supported by
pwr5 and pwr6 */
- void __protected_unlimited_store_stream_set(unsigned int direction,
const void* addr, unsigned int ID); /* Supported by
pwr6 */
- void __protected_store_stream_set(unsigned int direction,
const void* addr, unsigned int ID); /* Supported by
pwr6 */
- void __protected_stream_count_depth(unsigned int unit_cnt,
unsigned int prefetch_depth, unsigned int ID); /*
Supported by pwr6 */