The Variadic Template Function
The latest language standard has further complicated C++ by adding variadic templates. One problem I had in my attempt to understand this new feature was the lack of simple examples showing how it worked. Here's my attempt to show some of the basics of a variadic template function.
template <class ...A> int func(A... arg)
First the basic vocabulary: A template parameter can now be a template... [More]
The list of APARs and phaseid information for z/OS V1R12 XL C/C++ July 2012 PTFs are now available at the following link: http://www.ibm.com/support/docview.wss?uid=swg21606375 Can't
find the updates for your z/OS XL C/C++ compiler? Check out our latest
PTFs for C/C++ compilers on OS/390 and z/OS systems here .
The July 2012 Compiler PTFs for XL C/C++ for AIX, V11.1 are now available at the following links and on Fix Central: July 2012 PTF for XL C for AIX, V11.1 July 2012 PTF for XL C/C++ for AIX, V11.1 Can't find the updates for your compiler? Check out our C/C++ compiler latest update page here
The July 2012 Compiler and Runtime updates for XL C/C++ for Linux, V10.1 are now available at the following links and on Fix Central: July 2012 Update for XL C/C++ for Linux, V10.1 July 2012 RTE for for XL C/C++ for Linux, V10.1 Can't find the updates for your compiler? Check out our C/C++ compiler latest update page here .
Debugging optimized code has always been a challenging task, because it could
make the program state not available to debuggers. Optimization can change the
sequence of operations, add or remove code, change variable data locations, and
perform other transformations that make it difficult to associate the generated
code with the original source statements. In this article, Daniel Chen and Tommy
Hoffner introduce a compiler option that helps debug optimized code. Read more Interested in debugging optimized code using the latest XL... [More]
Igor Todorovski, Jean Saad, and Francesco Cassullo introduce a test selection
technique to reduce the number of test cases used for regression testing without
degrading test coverage. It uses profile data from the function tracing feature
(functrace) of the XL C/C++ and Fortran compilers to select a minimized and
accurate subset of test cases. Read more
Check out new exercises in the Power sandbox. You can find them here Experience new features available with the latest XL C/C++ compiler including introduction to C++11, the benefits of C++11, compiling with a list of options defined in a file, and OMP3.1 constructs (atomic and final clause). Benefits of C++11 (formerly C++0x): Part 1 Benefits of C++11 (formerly C++0x): Part 2 Compile with a list of options defined in a file Exploring new OMP3.1 constructs with the IBM XL C/C++ Compiler for AIX
Check out updated exercises in the Power sandbox. You can find them here You can learn about tracking compiler use, performance, auto-vectorization, optimization, interoperability, debugging and reporting.
The June 2012 Compiler and runtime updates for XL C/C++ for Linux, V11.1 are now available at the following links and on Fix Central: June 2012 Update for XL C/C++ for Linux, V11.1 June 2012 Runtime for for XL C/C++ for Linux, V11.1 Can't find the updates for your compiler? Check out our C/C++ compiler latest update page here .
The new ISO C programming language standard provides several features to aid
in programming productivity, debugging, and performance. Rajan Bhakta explains
which of these are already included in IBM XL compilers for easier debugging and
improved performance. More >
Computer architectures designed with high-performance microprocessors are reshaping the IT landscape. Today's software developers must deliver products and services faster with higher quality and performance to stay competitive, but in an environment with unprecedented potential, it's increasingly difficult for application developers to simultaneously handle business logic and performance issues in their code. That's where IBM Power Systems technology steps in, says Susan Yoskin, IBM Rational marketing solution manager. Power Systems are based... [More]
In a previous post I showed how to use the operand syntax of inline asm to eliminate the need for explicit loads and stores in the asm code. I wound up with an asm like this... asm ( "addi %0,%0, 88 \n" : " +r" (x) : ); However, there is a subtle problem with this code that is often overlooked (including by myself) -- the dreaded r0 problem. Certain instructions on Power have special semantics when one of the register input operands is r0. For example, in the case of addi, if the second... [More]
Get the highlights of the new and enhanced features in XL C/C++ Version 12.1,
including support of language features that enable users to port code easily
when moving to IBM Power Systems, as well as improved compilation time at
commonly used optimization levels. This article is for those who have some
experience with previous versions of XL C/C++. Read more .
Check out this recorded webinar by IBM Systems Magazine about Smart Tools on IBM i, AIX, and Linux for Faster Time to Market Get an early look at the
next version of Rational's offerings for Power Systems. New advancements
in compilers and significantly enhanced development tools will give
your organization a competitive advantage! Listen to the replay .
Looking to see and learn about the latest compiler enhancements in XL C/C++ on AIX and Linux. Download a trial. Here is quick recap of some of the highlights of these new compilers: Compliance to ISO programming language standards including C99 and C++2003,
emerging support for C11 and addition support for C++11, the latest standards
for the C and C++ programming languages Support for the OpenMP 3.1 industry specification Compile time performance and scalability improvements Enhancements to the diagnostic reports that can help identify... [More]