VOOZH about

URL: https://www.phoronix.com/news/Intel-Compilers-No-CLDEMOTE

⇱ Intel Cleans Up LLVM/Clang For Misreporting CLDEMOTE On Arrow Lake & Future Hybrid CPUs - Phoronix


👁 Phoronix

Intel Cleans Up LLVM/Clang For Misreporting CLDEMOTE On Arrow Lake & Future Hybrid CPUs

Written by Michael Larabel in Intel on 19 June 2025 at 09:37 PM EDT. 3 Comments
Code compilers like the prominent GCC and LLVM/Clang have been advertising support for the Cache Line Demote "CLDEMOTE" instruction on Arrow Lake processors as well as Lunar Lake and upcoming Panther Lake hybrid processors. Intel engineers added that compiler plumbing but was inaccurate and inadvertently missed until now with this prominent instruction not being supported there.

The CLDEMOTE instruction allows for the OS to tell the CPU core to demote a specified cache line to a higher cache level further away from the core. CLDEMOTE was found beginning with Intel Xeon Sapphire Rapids processors and can be helpful for system performance.

The compiler patches for GCC and LLVM/Clang have advertised CLDEMOTE being found with Arrow Lake, Lunar Lake, and upcoming Panther Lake but is inaccurate. That compiler enablement work was originally submitted years ago by Intel engineers but turned out to be inaccurate. This slipped under my radar too but when checking tonight on my Arrow Lake systems, CLDEMOTE support is indeed not advertised by the processor.

👁 LLVM Clang removes CLDEMOTE from Arrow Lake

Intel engineer Phoebe Wang landed a patch today within LLVM Git via this pull request to now remove the presence of CLDEMOTE from "arrowlake" targeting as well as future Intel hybrid CPU models. This also splits up the Arrow Lake and Intel Xeon E "Sierra Forest" handling with that Xeon E-core processor supporting CLDEMOTE.

👁 GCC docs


The GCC compiler is still advertising and will attempt to use CLDEMOTE on Arrow Lake and later too, but presumably will see a similar patch soon for removing the presence of CLDEMOTE on those Intel Core Ultra CPUs too.

Update: Intel has now posted a similar patch for the GCC compiler removing CLDEMOTE from client CPUs.

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.