Intel Sends Out Initial Compiler Patches For Lunar Lake & Arrow Lake

Written by Michael Larabel in Intel on 13 July 2023 at 06:41 AM EDT. Add A Comment
INTEL
Intel's Linux software engineers understand the annual GCC compiler release cadence well and acknowledge the importance of having tuned compiler support available at launch. Intel for years has tended to get their new CPU support and new ISA features upstreamed into GCC as well as LLVM/Clang well ahead of product launch so that by the time their new consumer and server CPUs are shipping, there tends to be support within compilers just not at their stable versions but already found in the likes of Ubuntu. With that said, today Intel engineers posted initial compiler patches for Lunar Lake and Arrow Lake processors.

Since last year the GCC compiler has already supported Meteor Lake and that's found in the already-shipping GCC 13.1 stable compiler. We've also seen Intel recently post Granite Rapids D support to complement the Sierra Forest, Grand Ridge, and Granite Rapids support also found in GCC 13. Now today brings initial Arrow Lake and Lunar Lake patches.

Arrow Lake and Lunar Lake compiler start


Arrow Lake is the Intel 20A successor to Meteor Lake while Lunar Lake is the generation past Arrow Lake. The patches today bring the initial Intel Arrow Lake and Lunar Lake support with new instruction capabilities for AVX-VNNI-INT16, SM3, SHA512, and SM4. These new instructions for those generations of processors was recently confirmed in an updated Intel programming reference manual.

Arrow Lake and Lunar Lake new instructions


AVX-VNNI-INT16 brings INT16 support to the AVX-VNNI space, SM3 brings new SM3 message scheduling instructions with VSM3RNDS2 / VSM3MSG2 / VSM3MSG1, SHA512 brings new instructions for performing calculations on SHA512 messages, and SM4 adds new instructions for SM4 key expansion and SM4 encryption. See the manual for all the new instruction details in full.

These four patches add the initial SM4 / SHA512 / SM3 / AVX-VNNI-INT16 instruction support but don't yet add the "arrowlake" and "lunarlake" compiler targets. Though expect more Arrow Lake and Lunar Lake patches to come for GCC in the next few weeks/months as Intel will likely have this future generation compiler support squared away in time for the GCC 14.1 stable release due out in early 2024.

Kudos as always to Intel for their very early pre-launch compiler enablement and other timely open-source/Linux enablement. Aside from the compiler bring-up, they've also already been working on Lunar Lake audio support, Lunar Lake networking, various early Arrow Lake kernel changes, and more. As always, stay tuned to Phoronix to learn about new hardware enablement work taking place within the Linux kernel and other key open-source projects.
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