This posting concerns outputs which are assigned registers that may overlap with inputs. Consider this inline asm that uses addc and adde in order to accomplish 128 bit arithmetic... asm ("addc %0, %2, %3 \n" "adde %1, %4, %5 \n" : "=r"(xl),"=r"(xu) : "r"(yl),"r"(zl),"r"(yu),"r"(zu)); In this example all the inputs and outputs are unsigned longs. Unfortunately, although it looks pretty straightforward, there is a potentially... [More]
The April 2012 PTF for XL C/C++ Update for XL C/C++ Advanced Edition for Blue Gene/P, V9.0 is now available at the following links and on Fix Central : April 2012 Update for XL C/C++ Advanced Edition for Blue Gene/P, V9.0 Can't find the updates for your compilers? Check out our C/C++ compilers latest updates page here .
If you use zOS and applications running zOS as frequent as I do, you probably have defined best-scenarios possible to perform repeating tasks [as I have]. One of the things that I often have to do on a daily basis is to investigate and debug application errors and often the first lead I have into what the root cause maybe is the output and/or error messages. Just in case some of you may not know about this online facility that lets you look up explanations for the IBM messages, as well as for some system abends and codes, I provide a link... [More]
Hi. This is the first posting in what I hope to be a continuing blog on tips and tricks for inline assembly – a.k.a. asm – which is a way of inserting assembly language into your C and C++ programs. In this blog I won’t be covering basic syntax and semantics (you can get that by consulting a DeveloperWorks article – link at the end), but rather will focus on some of the trickier aspects of using inline asm in your programs. My primary focus will be on the Power architecture. Today I’ll start with tips for input and output operands. Imagine... [More]
No new Standard before 2017. That is the word from the C++ Standard meeting in Feb 2012, the first meeting since the ratification of C++11 after the Indiana meeting in August 2011. It must be the location, because it had over 60 attendees. We seem to have one of these every five years courtesy of PlumHall, although this one was paid for by Bloomberg. Thank you, John and Tom. The first and last thing on everyone's mind was when will the next Standard be? Will it be another 10 years? As this meeting included the reopening of the Evolution... [More]
To help you create more innovative products and services, faster than the competition, at lower cost and risk, IBM Rational helps you transform software design, development, and delivery. Innovate 2012, sponsored by Rational, is the event for software and systems innovation that is focused on helping you transform software delivery to accelerate better business outcomes.. We hope you will join us for Innovate 2012, in Orlando, Florida, June 3-7, 2012. Top 5 Reasons to Attend include: • Over 400 technical sessions across 23 tracks focused on... [More]
Mission-critical applications are the lifeblood for most large enterprises, which often rely on mainframes for data and transaction processing. While these systems are crucial for business operations, many organizations perceive them as a costly burden keeping enterprises from innovating and remaining competitive. Nothing could be further from the truth. Legacy applications contain a wealth of knowledge and logic that can be leveraged to push businesses into surprising new directions. The problem many IT departments face, though, is learning... [More]
The XL C METAL compiler option generates code that does not require access to the Language Environment support at run time. Instead, the METAL option provides C-language extensions that allow you to specify assembly statements that call system services directly. Using these language extensions, you can provide almost any assembly macro, and your own function prologs and epilogs, to be embedded in the generated HLASM source file. When you understand how the METAL-generated code uses MVS linkage conventions to interact with HLASM code, you can... [More]
In late January, I hosted the OpenMP January 2012 Face-2-Face (F2F) meeting in San Francisco at the Serrano hotel attended by 24 experts. In the words of one expert, it was one of the most productive meeting we have had in a long time. In this meeting, we increased the urgency to drive towards OpenMP 4.0 with subgroups to discuss affinity, taskgroups, accelerators and high level vector language, Fortran 2003 integration, and error model. Currently, the Affinity subgroup is lead by Christian Terboven, Task subgroup is lead by Federico... [More]
At SC11 in Seattle, a large IBM team arrived to help showcase IBM's
effort to support High Performance Computing. A team will help with
talking to the Scientific Computing Users Group called SciComp or
SP-SXXL. I will be mostly responsible for looking after OpenMP.
OpenMP has a booth where we hosted many questions from users and discussed future. we have been a presence in
SC for many years and frankly we almost don't have to spend the
large sum of money to be there to remind people of our deep connection
with High , but we... [More]
Its been quite a few months since my last update and I apologize for the lack of blog updates since the last Standard meeting. Things have been hectic indeed. Up to now, I have been enjoying my super-techie life in September of last year and while giving a keynote speech to open the Karlsruhe Institute of Technology (KIT) Steinbuch Centre for Computing which does a great job of showcasing GRID computing, I was asked to become the CEO of OpenMP . First a few things about the KIT school where the audience was very interested in the new C++11... [More]
The February 2012 PTFs for XL C/C++ for AIX, V10.1 are now available at the following links and on Fix Central : February 2012 PTF for XL C for AIX, V10.1 February 2012 PTF for XL C/C++ for AIX, V10.1 Can't find the updates for your compilers? Check out our C/C++ compilers latest updates page here .
Why should rewriting code written in assembler to exploit the latest hardware features be any different than re-writing code in C/C++ to use the latest language features? You'd think these are comparable efforts for a development shop and equally encouraged. That for the applications to stay competitive it is important to take advantage of all the applicable latest features. Written in any language, be it a high level language (HLL), such as C/C++, PL/1 or COBOL, or a Low Level language, such as assembler, they need to keep up to date both... [More]
Are you concerned about program security? Check out this post on the stack protection feature available in the XL C/C++ and XL Fortran compilers: https://www.ibm.com/developerworks/mydeveloperworks/blogs/b10932b4-0edd-4e61-89f2-6e478ccba9aa/entry/security_stack_protection_in_xl_compilers17?lang=en
The list of APARs and phaseid information for z/OS V1R11 XL C/C++ February 2012 PTF are now available at the following link: http://www-01.ibm.com/support/docview.wss?uid=swg21579858 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 .