diff options
author | Oliver Stannard <oliver.stannard@arm.com> | 2014-09-29 10:23:20 +0000 |
---|---|---|
committer | Oliver Stannard <oliver.stannard@arm.com> | 2014-09-29 10:23:20 +0000 |
commit | 8cf642b8dac6eefa2c707a67dea810629aa13e10 (patch) | |
tree | a4f39e15dec99aa71755692a91c90a3f2f557146 /cmake/Modules | |
parent | 2f794721f44110059fae571430cb89fd64a3ff36 (diff) |
[compiler-rt] Do not use ldrexd or strexd on v7M
The ldrexd and strexd instructions are undefined for the ARMv7M
architecture, so we cannot use them to implement the
__sync_fetch_and_*_8 builtins. There is no other way to implement
these without OS support, so this patch #ifdef's these functions out
for M-class architectures.
There are no tests as I cannot find any existing tests for these
builtins.
I used the __ARM_ARCH_PROFILE predefine because __ARM_FEATURE_LDREX is
deprecated and not set by clang.
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@218601 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'cmake/Modules')
0 files changed, 0 insertions, 0 deletions