C/C++

C/C++

C/C++

Your one-stop destination to learn and collaborate about the latest innovations in IBM C/C++ for z/OS compilers to develop high-performing C/C++ applications and system programs on z/OS while maximizing hardware use and improving application performance.

 View Only

Next generation of IBM C/C++ compiler generally available on z/OS

By Robert Barrington posted Tue April 05, 2022 11:15 AM

  

In 2020, IBM announced the intention to adopt open source LLVM infrastructure for the next generation of IBM XL C/C++ compilers. As an active sponsor and strong supporter of LLVM, IBM is committed to bringing the benefits and innovations from the LLVM community to our enterprise clients.  IBM clients will enjoy the best of both worlds, compilers that combine IBM’s strength in optimization technology with LLVM’s open-source infrastructure.
 
IBM Open XL C/C++ 1.1 for z/OS is the newest C/C++ compiler that is based on the open source LLVM infrastructure.  The IBM Open XL C/C++ 1.1 is a 64-bit compiler that runs on z/OS UNIX and supports up to C17/C18 and C++17 language standard features.  By incorporating the LLVM core and Clang sub-projects into IBM Open XL C/C++ 1.1, support for emerging C and C++ language standards will be made available in IBM offerings more promptly.  The IBM Open XL C/C++ 1.1 compiler supports EBCDIC and ASCII execution character sets and generates AMODE 64 code, making it ideal for z/OS Unix users porting applications from distributed platforms.
 
IBM Open XL C/C++ 1.1 supports the latest hardware capabilities – including capabilities of the latest IBM z16.  Application developers can recompile using the new ‘-march=z16’ or ‘-march=arch14’ compiler options to instruct the compiler to optimize code for IBM z16. This translates into immediate support of IBM z16 and improved application performance without any source code changes.
 
The IBM Open XL C/C++ 1.1 compiler, which is available as a web deliverable, is a no-charge add-on feature for clients that have enabled the IBM z/OS XL C/C++ compiler (an optionally priced feature) on IBM z/OS v2.4 or IBM z/OS v2.5.  Both the IBM Open XL C/C++ 1.1 compiler and the IBM z/OS XL C/C++ optionally priced feature on z/OS will be available for the foreseeable future. Consider joining our Design Partner Program (DPP) to gain insight into C/C++ on z/OS and to provide feedback directly to the Open XL C/C++ compiler development team to help influence the direction of the IBM Open XL C/C++ 1.1 compiler.
 
The IBM Open XL C/C++ 1.1 for z/OS web deliverable is available as of May 27, 2022.
 
If you would like details on how to join the DPP, please email Abhishek Sriram (abhishek.sriram@ibm.com).
 
Contributors:
Product Manager: Abhishek Sriram
Program Director: Roland Koo
Development Manager: Robert Barrington
 
 
Useful Links:
 
Download Page
 
Product Page/Video Overview
 
Check out some Frequently Asked Questions (FAQ’s) below:
 
Who can get the IBM Open XL C/C++ 1.1 compiler?
Clients that have enabled the IBM z/OS XL C/C++ optionally priced feature of the IBM z/OS v2.4 or IBM z/OS v.2.5 operating systems.
 
How much does the IBM Open XL C/C++ 1.1 compiler cost?
The compiler is a no-charge add-on feature for clients that have enabled the IBM z/OS XL C/C++ optionally priced feature of z/OS.
 
How much does the IBM z/OS XL C/C++ optionally priced feature on z/OS cost?
Contact your IBM sales representative for details.
 
How do I get the IBM Open XL C/C++ 1.1 for z/OS compiler?
The compiler is available as a web download -> Download Page

2 comments
79 views

Permalink

Comments

Tue April 30, 2024 07:13 AM

Hi Colin Paice,

Sorry for the late reply... wanted to wait till IBM Open XL C/C++ 2.1 gets announced today. 

You could write your own JCL to call the Open XL 1.1 compiler, but it would be much easier to use the Open XL 2.1 compiler PROCs to do what you want. In Open XL 2.1, the equivalent of the EDCQCB PROC is CLCQCB in the SCNWPRC dataset.

 

With regards to your question about C, the different levels of C are based on the ISO C standard (ISO 9899). C17/C18 is the current C standard out there right now. I’m not sure what C level 16 means. Could you point me to the documents where MQ says this so we can clarify it?

Please note the Open XL C/C++ for z/OS releases support the current C17/C18 and C++17 standards, the 2.1 release added 32-bit XPLINK and Non-XPLINK compilation modes and additional features such as z/OS batch, data set support, and more.

Hope this addressed your questions.

Thanks.

JC

Tue February 06, 2024 02:29 AM

It says IBM Open XL C/C++ 1.1... runs on Unix.
If I do compiles in batch using EDCQCB...  do I get this new compiler?  Please provide information on non Unix compilers.

I found it hard to find what the differences are between the different levels of C.  MQ has just said that C level 17 is recommended, and level 16 is deprecated.  How do I find the changes in the compilers, and what I need to do to get my code to support CL17

Thank you

Colin