Cling C++ Interpreter Looking To Upstream More Code Into LLVM

Written by Michael Larabel in LLVM on 11 July 2020 at 12:01 AM EDT. 6 Comments
LLVM
Not to be confused with Clang as the well known C/C++ compiler front-end for the LLVM compiler, Cling is a separate project as an interactive, JIT-based C++ interpreter. Cling has been in development for years and at least partially is looking to upstream where possible back into LLVM.

Cling has been years in the making as a C++ interpreter and serving other interesting LLVM-based use-cases like JIT'ing NVIDIA CUDA code. Now though to help foster its development and making use of a recent grant, the developers behind Cling are looking to upstream the code where possible.

Vassil Vassilev commented of Cling's already existing successes and future plans, "Cling is also a standalone tool, which has a growing community outside of our field. Cling’s user community includes users in finance, biology and in a few companies with proprietary software...Last year we were awarded an NSF grant to improve cling's sustainability and make it a standalone tool...The project foresees three main directions -- move parts of cling upstream along with the clang and llvm features that enable them; extend and generalize the language interoperability layer around cling; and extend and generalize the OpenCL/CUDA support in cling. We are at the early stages of the project and this email intends to be an RFC for the first part -- upstreaming parts of cling."

Cling has worked towards upstreaming patches where possible in the past but there are still around 100 patches in their Clang fork. Cling developers are hoping to get more of that code into better shape for upstreaming, extending/generalizing the language interoperability layer around Cling, and extending/generalizing the OpenCL/CUDA support in Cling.

More details on Cling's upstream hopes and ensuing discussion around this effort can be found on the LLVM mailing list.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week