Skip main navigation (Press Enter).
Log in
Toggle navigation
Community
Topic Groups
Champions
Meet the Champions
Program overview
Rising Champions
IBM Champions group
User Groups
Find your User Group
Program overview
Events
Dev Days
Conference
Community events
User Groups events
All TechXchange events
Participate
TechXchange Group
Welcome Corner
Blogging
Member directory
Community leaders
Resources
Badge Program
Rewards
Rewards programs
Rewards discussion
Log in
TechXchange
Training
Community
Credentials
Events
Conference
TechXchange
Training
Community
Credentials
Events
Conference
Blogs
×
Share
Share on LinkedIn
Share on X
Share on Facebook
What XL's adoption of Clang means to you
By
Archive User
posted
Tue October 03, 2017 02:34 PM
Like
Originally posted by:
Nicole Trudeau
Over the last few years, y
ou may have read about IBM's adoption of the open source Clang front end in the XL C/C++
for Linux
compilers.
What does that adoption mean to you?
What benefits will you get from it?
What is Clang?
C
lang is a component of the LLVM open source compiler and toolchain project and provides the C and C++ language family front end for LLVM.
Clang was first introduced into
a portion of
the IBM XL C/C++ for Linux compilers
front end
in V13.1.1, released Dec 2014.
The IBM XL C/C++ for Linux
compiler combines the Clang front-end infrastructure with the advanced optimization technology from IBM in the compiler back-end.
IBM and other large companies are actively contributing to the community in svn, which is mirrored in
github
for convenience. The community has been growing dramatically in recent years. As Clang states on
their website
"we intend for it to be production quality."
. IBM also tests all compiler GA products with our millions of test cases to ensure that you get a quality product.
N
ever used IBM XL C/C++
?
Clang = Easy migration from GCC
Clang supports the majority of GCC options and extensions.
From
Clang
,
"GCC is currently the defacto-standard open source compiler today, and it routinely compiles a huge volume of code ... [we] support the GCC extensions that see the most use".
You'll only need
minimal
Makefile
changes to move to XLC on Linux.
Use
IBM XL C/C++
V13.1 AIX/Linux or older?
Clang = Open Source Collaboration
We can now collaborate with our customers in the open source on which our language support is based
by contributing back to the community. We're also pulling down from trunk so we're syncing up with the community work.
Clang = Better
C/C++
Language Support
Want to use C++14 constructs in your code?
Clang supports that! For full C++ support in Clang, see
here
.
Clang = The Same Great Application Performance
The new compiler combines the Clang front-end infrastructure with the advanced optimization technology from IBM in the compiler back-end.
You'll experience the same great application performance with the Clang front end as you did with IBM's fully proprietary front end.
Clang = Better Diagnostic Messages
From Clang,
"In addition to being fast and functional, we aim to make Clang extremely user friendly. As far as a command-line compiler goes, this basically boils down to making the diagnostics (error and warning messages) generated by the compiler be as useful as possible." See
here
for full details on the types of diagnostic messages available.
Clang =
Deep C++ Expertise
The
Clang implementation is developed by a large community with deep skill depth and expertise in the C++ world.
You can trust the production quality of Clang.
Clang =
Easier
manage
ment of
software across multiple platform
s
Clang is more ubiquitous than XL. Customers can use the IBM's Clang-based compiler for Linux on Power, and use other Clang-based compilers for the other platforms that they would like to deploy on. If every compiler you are using contains the same Clang front end, you will get option and source compatibility and will not encounter implementation defined behaviours.
Did you know that you can try the latest version of IBM XL C/C++ for Linux free of charge? The IBM XL C/C++ for Linux Community Edition, a fully-functional, production-use
,
free-of-charge C/C++ compiler, is available for you to download on 3 channels: Dockerhub, Linux repos, and as a tarball from IBM developerWorks. Find more info at
this blog entry
.
You may want to read
a related
blog
,
recently written by m
y colleague
Chris Bowler
about the reasons for why we (IBM XL Compilers) decided to pursue the Clang front end
.
Have you
used
IBM XL C/C++ for Linux V13.1.1 or later? Leave a comment to let us know what difference the Clang front end made for you!
#IBM-XL-C,-C++,-and-Fortran-Compilers-for-POWER-servers-blog
#C/C++andFortran
0 comments
1 view
Permalink
Copy
Powered by Higher Logic