LLVM Lands Support For ARMv8.5's Branch Target Identification (BTI)
Written by Michael Larabel in LLVM on 10 October 2018 at 04:53 AM EDT. 1 Comment
LLVM --
A bulk of the Linux/open-source enablement we have seen taking place for ARM's new ARMv8.5 architecture revision is around its new Spectre defenses to help SoCs that will begin shipping later in 2019.

Back in September the first of the ARMv8.5 support began landing in the LLVM/Clang compiler and it's work to battle Spectre-style vulnerabilities. That work included speculation restriction system registers, a new speculation barrier, prediction invalidation instructions, and SSBB/PSSBB speculation barriers. ARMv8.5 also brings some additions outside of the Spectre/security space like new persistent memory instructions and random number instructions.

In the Linux kernel space, patches are pending that implement Speculation Store Bypass Safe for ARMv8.5 and will be included in the Linux 4.20~5.0 kernel.

The latest work on the compiler front landing in the LLVM tree is for Branch Target Identification or BTI for short and for helping fend off Spectre Variant Two with ARMv8.5.

Branch Target Identification allows marking of valid targets of indirect branches and the CPU will trap an instruction in a protected page that is trying to perform an indirect branch to an instruction other than a marked BTI.

Developers interested in more of the technical details of ARMv8.5 BTI can find them via this patch comment on the code merged earlier this week. These initial ARMv8.5 additions will be found in the LLVM Clang 8.0 update due out in early 2019.

About The Author
Author picture

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 10,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 or contacted via MichaelLarabel.com.

Related LLVM News
Popular News This Week