LLVM News Archives


747 LLVM open-source and Linux related news articles on Phoronix since 2009.

LLVM Clang 19 Lands Support For C23's #embed
LLVM Clang 19 Lands Support For C23's #embed

Merged today to LLVM Clang 19 Git is support for the #embed resource inclusion mechanism that is an approved C23 feature. This also makes Clang the first for supporting this pre-processor embed feature.

12 June 2024 - C23 #embed - 6 Comments
AMD Lands Support For Vendor Flavored SPIR-V Within LLVM
AMD Lands Support For Vendor Flavored SPIR-V Within LLVM

SPIR-V used by the likes of OpenGL, OpenCL, and Vulkan is a common intermediate representation (IR) / intermediate language for consumption by device drivers. With code now merged into LLVM, AMD has introduced the notion of vendor "flavored" SPIR-V for containing extra information pertinent to the GPU device/driver being targeted.

7 June 2024 - AMDGCN Flavored SPIR-V - 8 Comments
Proposal Raised To Deprecate "-Ofast" For The LLVM/Clang Compiler
Proposal Raised To Deprecate "-Ofast" For The LLVM/Clang Compiler

Some that crave the absolute best possible performance sometimes build their software with the "-Ofast" optimization level that is a step above "-O3" but comes with the risk of potentially unsafe math. LLVM developers are now weighing whether to deprecate -Ofast to either remove it or have it just be an alias for the -O3 optimizations.

1 May 2024 - -Ofast - 20 Comments
LLVM's BOLT Being Adapted To Analyze Security Hardening Of Binaries
LLVM's BOLT Being Adapted To Analyze Security Hardening Of Binaries

LLVM's BOLT is an amazing tool for optimizing the layout of binaries and in turn can lead to some mighty useful performance improvements. But now an Arm compiler engineer has taken to leveraging BOLT for creating a binary analysis tool to vet the correctness of security hardening options.

4 April 2024 - BOLT Security Hardening - 4 Comments
Meta Continues Working On BOLT'ing The Linux Kernel For Greater Performance
Meta Continues Working On BOLT'ing The Linux Kernel For Greater Performance

Merged to the LLVM compiler stack two years ago was the BOLT tool for optimizing the layout of generated binaries for offering even greater performance than the likes of Profile Guided Optimizations (PGO) alone. BOLT had been in development for years by Facebook/Meta engineers and has continued to be improved upon for enhancing the code layout of binaries to yield enhanced performance. Recently there's been renewed work on using BOLT to optimize Linux kernel images.

16 February 2024 - LLVM BOLT - 3 Comments
LLVM/Clang Can Work Fine As A GCC Replacement For Linux Distributions
LLVM/Clang Can Work Fine As A GCC Replacement For Linux Distributions

While the performance of LLVM/Clang is on-par with GCC these days on both x86_64 and AArch64 and the C/C++ support is very robust compared to many years ago, most Linux distributions continue using the GCC compiler and GNU toolchain by default. OpenMandriva is a well known Linux distribution that for several years has been a Clang-built Linux distribution while for three years now the Chimera Linux distribution has also been relying exclusively on an LLVM toolchain.

5 February 2024 - Chimera Linux Experiences - 43 Comments
LLVM Looking To Better Collaborate Around Common AI/GPU/FPGA Offloading
LLVM Looking To Better Collaborate Around Common AI/GPU/FPGA Offloading

While most hardware vendors are relying on LLVM when it comes to offloading compute work to GPUs, AI accelerators, FPGAs, and similar heterogeneous compute environments, right now each vendor is basically creating their own LLVM offloading run-time among a lot of other duplicated -- and often downstream only -- code. The new "llvm/offload" project hopes to lead to better collaboration in this area.

23 October 2023 - LLVM Offload Project - 4 Comments
Intel Proposes Adding Full SYCL Programming Model Support To Upstream LLVM
Intel Proposes Adding Full SYCL Programming Model Support To Upstream LLVM

Intel engineers are proposing that full support for the SYCL programming model be added to upstream LLVM. This is part of their broader oneAPI effort and embracing Khronos' SYCL standard for single-source C++ heterogeneous programming from CPUs to GPUs, FPGAs, and other accelerators.

16 October 2023 - Full SYCL For Upstream LLVM - 9 Comments
LLVM 17.0 + Clang 17.0 Released With Many New Compiler Features
LLVM 17.0 + Clang 17.0 Released With Many New Compiler Features

The LLVM 17 compiler stack has been released as stable as LLVM 17.0.1 -- a slight mistake leaving the 17.0.0-rc tag meant the original v17.0.0 tag was skipped. This LLVM 17.0.1 stable release along with sub-projects like the Clang 17 C/C++ compiler bring many new features and improvements.

19 September 2023 - LLVM 17.0.1 - 14 Comments
LLVM Clang Now Supports -std=c23
LLVM Clang Now Supports -std=c23

LLVM/Clang developers have been working on C23 language support for some time already but to this point it's only been exposed when using the -std=c2x target or -std=gnu2x for the GNU dialect. However, with C2x having been finalized this summer as C23, the LLVM Clang 18 compiler will now honor the -std=c23 option.

11 August 2023 - C23 Target - 2 Comments
LLVM 18 Lands -march=arrowlake / arrowlake-s / lunarlake
LLVM 18 Lands -march=arrowlake / arrowlake-s / lunarlake

Going along with LLVM's recent additions around supporting new Intel instructions coming with future generation Core CPUs, the LLVM 18 Git development code has now landed support for actually honoring -march=arrowlake, -march=arrowlake-s, and -march=lunarlake targets.

28 July 2023 - LLVM Clang 18 - 1 Comment
LLVM Lands Initial Support For Fat LTO Objects
LLVM Lands Initial Support For Fat LTO Objects

In a move similar to GCC's implementation, LLVM Git landed this week initial support for fat LTO objects. This "-ffat-lto-objects" support will be found with the LLVM/Clang 17 release this autumn.

2 July 2023 - LLVM Fat LTO Objects - 5 Comments
New Patches Allow LoongArch ClangBuiltLinux Builds
New Patches Allow LoongArch ClangBuiltLinux Builds

While the upstream LLVM/Clang compiler has been building the AArch64 and x86_64 mainline Linux kernel builds for quite some time, for those interested in China's LoongArch CPU architecture it's the latest target seeing work to enable compiling the Linux kernel under Clang.

25 June 2023 - LoongArch + Clang + Linux - 3 Comments
LLVM 16.0 Released With New Intel/AMD CPU Support, More C++20 / C2X Features
LLVM 16.0 Released With New Intel/AMD CPU Support, More C++20 / C2X Features

LLVM 16 was released on Friday night as the latest half-year feature release to this open-source compiler stack. From initial AMD Zen 4 support to bringing up new Intel CPU instruction sets and processor targets for their new processors being introduced through 2024, there is a lot of exciting hardware additions in LLVM 16.0. LLVM 16.0 is also notable for faster LLD linking, Zstd compressed debug sections, stabilizing of its LoongArch target, defaulting to C++17 for Clang, and much more. Here's a look at all the exciting changes of LLVM 16.

18 March 2023 - LLVM 16.0 + Clang 16.0 - 14 Comments
Google Engineer Introduces "Light AVX" Support Within LLVM
Google Engineer Introduces "Light AVX" Support Within LLVM

Google engineer Ilya Tocar has introduced the notion of "light" AVX support within the LLVM compiler infrastructure for utilizing some benefits of Advanced Vector Extensions (AVX) but trying to avoid the power/frequency impact that AVX-512 use has on older generations of Intel processors.

25 January 2023 - Light AVX - 8 Comments
Compiling The Linux Kernel With LLVM's Clang Matured In 2022
Compiling The Linux Kernel With LLVM's Clang Matured In 2022

Over the past few years it's become possible to compile the mainline Linux kernel with LLVM/Clang compared to the long-standing dependence on using the GCC compiler. While it's been possible for 3+ years to use the mainline Linux kernel and mainline Clang for building a working x86_64 and AArch64 kernel, the process and support continues to mature.

5 January 2023 - Clang Built Linux - 19 Comments
LLVM's BOLT Flipped On By Default For Linux x86/AArch64 Test Releases

BOLT as the Facebook/Meta-developed tech for optimizing binaries in the name of greater performance by optimizing the code layout was merged to mainline LLVM at the start of the year. Now as we approach the end of the year BOLT is getting a bit of a promotion with being flipped on by default for Linux x86_64 and AArch64 test releases.

4 November 2022 - Optimizing Binaries - 8 Comments

747 LLVM news articles published on Phoronix.