Another interesting open-source project has tipped up that is powered by the LLVM compiler infrastructure.
GCC has had support for 64-bit ARM, a.k.a. AArch64, going back to last summer for using the open-source compiler with next-generation ARMv8 hardware. Being merged today is finally support for the LLVM compiler infrastructure with an experimental 64-bit ARM/AArch64 back-end target.
Back on Tuesday there was a basic email by a developer volleyed on the GCC mailing list, which has since sparked dozens of responses and a rather interesting conversation about the future of the GNU Compiler Collection and its ultimate path and viability moving forward. The initial e-mail was simply an inquiry asking about an estimated time-frame for having full support of the ISO C++11 specification. Diego Novillo, a well known GCC developer and Google employee, has even expressed fear that GCC may be past the tipping point and could die out naturally.
There's been many Phoronix articles already covering features and changes coming to GCC 4.8, the next major compiler update to come out of the Free Software Foundation in March or April. One of the areas that's seen improvements in GCC 4.8 and not talked about much yet is the improvements to its runtime library, libstdc++, with new features being present.
The LLVM compiler infrastructure and the Clang C/C++ compiler front-end are being ported to the GNU/Hurd operating system.
Version 0.7 of POCL, the Portable OpenCL implementation targeting OpenCL 1.2 compliance, has been officially released.
While C++11 is an ISO standard and the Clang C/C++ compiler front-end to LLVM has been supporting C++11, developers behind the LLVM compiler infrastructure are still deciding whether to allow C++11 language features within their code-base.
Since publishing LLVM/Clang 3.2 benchmarks a few days ago that showed the Clang C/C++ compiler competing with -- and in some cases outperforming -- the GCC compiler on Intel x86_64, several Phoronix readers have been asking how things compare on the ARM side.
One of the features sadly not found in the recent release of LLVM/Clang 3.2 is OpenMP support.
While just released on Friday, FreeBSD has already pulled LLVM/Clang 3.2 into its "head" repository and will be pushing it into the FreeBSD 9/Stable series in the weeks ahead.
While the features of LLVM 3.2 and its Clang C/C++ compiler front-end have been talked about in numerous Phoronix articles over the past few months, here's an overview of the new features for this open-source compiler infrastructure update that was released on Friday.
It's a few days late, but LLVM 3.2 has been officially released.
In preparing for the imminent release of LLVM 3.2, another worthwhile feature to go over is the NVPTX back-end that's been merged for this forthcoming open-source compiler infrastructure release. The NVPTX LLVM back-end is what's used by NVIDIA's closed-source driver for its CUDA and OpenCL compiler.
The soon-to-be-released LLVM 3.2 compiler infrastructure will expand upon its coverage of processor support and CPU capabilities.
Premiering with LLVM 3.2, which will debut later this month, is an automatic loop vectorizer. I've already delivered benchmarks of LLVM's new automatic loop vectorizer, but here's more details on this new LLVM compiler feature.
The videos from last month's LLVM Developers' Meeting in San Jose, California have now been uploaded to the Internet.
An Intel developer has proposed a migration tool based upon LLVM's Clang tooling library to auto-convert C++ code to take advantage of new C++11 features in an automated manner.
While an open industry standard, the leading open-source compilers still lack support for the OpenACC parallel programming standard.
To complement the recent compiler benchmarking on the ARM Cortex-A15 as found in the Samsung Exynos 5 Dual with the Samsung Chromebook, here's some compiler tuning benchmark results from the speedy low-power ARM system.
A software research project being funded by the United States' Defense Advanced Research Projects Agency (DARPA) with its Cyber Fast Track program is looking at ways for providing a flexible and integrated security infrastructure by using LLVM for dynamic and static security tasks.
The second release candidates of LLVM 3.2 -- along with related components like Clang and DragonEgg -- are now available for testing.
While born originally at Google as projects for LLVM, AddressSanitizer and ThreadSanitizer have been ported to GCC and will be part of the forthcoming GCC 4.8 compiler release. Back at Google, they're onto developing MemorySanitizer for LLVM.
Clang UPC has been announced, which is a Unified Parallel C implementation targeting the LLVM/Clang compiler stack. Unified Parallel C is a C99 extension targeting high-performance computing on parallel machines.
The LLVM compiler infrastructure is frequently talked about on Phoronix whether it be about its Clang C/C++ compiler or one of the innovative use-cases for LLVM such as with the LLVMpipe Gallium3D driver or as a JIT engine within some free software projects like Mono. However, for those that don't understand much of the internals of LLVM, here's a brief overview.
There's just a few weeks to go until the release of LLVM 3.2, but AMD is still trying to get its "R600" GPU back-end merged into this next compiler infrastructure release.
In addition to featuring an auto-vectorizer, Polly optimizations, and countless other improvements, the forthcoming release of LLVM 3.2 brings numerous improvements to its PowerPC back-end.
Another interesting session from this month's LLVM Developers' Meeting in San Jose was about how Google manages to collect and utilize Clang diagnostics internally for software they develop at the company.
ARM's AArch64 back-end for LLVM to handle the 64-bit ARMv8 architecture is working, but there's still more work ahead of the hardware's general availability in about one year's time.
613 Compiler news articles published on Phoronix.