[all-commits] [llvm/llvm-project] d7e089: [ARM] Use hardware TLS register in Thumb2 mode whe...
Nick Desaulniers via All-commits
all-commits at lists.llvm.org
Wed Oct 27 16:46:10 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: d7e089f2d6a5cd5f283a90ab29241d20d4fc3ed1
https://github.com/llvm/llvm-project/commit/d7e089f2d6a5cd5f283a90ab29241d20d4fc3ed1
Author: Ard Biesheuvel <ardb at google.com>
Date: 2021-10-27 (Wed, 27 Oct 2021)
Changed paths:
M llvm/lib/Target/ARM/ARMInstrThumb.td
M llvm/lib/Target/ARM/ARMInstrThumb2.td
M llvm/test/CodeGen/ARM/readtp.ll
M llvm/test/CodeGen/ARM/thread_pointer.ll
Log Message:
-----------
[ARM] Use hardware TLS register in Thumb2 mode when -mtp=cp15 is passed
In ARM mode, passing -mtp=cp15 forces the use of an inline MRC system register read to move the thread pointer value into a register.
Currently, in Thumb2 mode, -mtp=cp15 is ignored, and a call to the __aeabi_read_tp helper is emitted instead.
This is inconsistent, and breaks the Linux/ARM build for Thumb2 targets, as the Linux kernel does not provide an implementation of __aeabi_read_tp,.
Reviewed By: nickdesaulniers, peter.smith
Differential Revision: https://reviews.llvm.org/D112600
More information about the All-commits
mailing list