summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGExprCXX.cpp
diff options
context:
space:
mode:
authorOliver Stannard <oliver.stannard@arm.com>2014-09-29 10:23:20 +0000
committerOliver Stannard <oliver.stannard@arm.com>2014-09-29 10:23:20 +0000
commit609e2e6a6e001bcbe3da469a0c117fa570ca71aa (patch)
tree5b7cee154cc654f932f325f7b46845e4326f301d /clang/lib/CodeGen/CGExprCXX.cpp
parent6cbf43167bf33689e8b02920cde6758f8dba8d8d (diff)
downloadbcm5719-llvm-609e2e6a6e001bcbe3da469a0c117fa570ca71aa.tar.gz
bcm5719-llvm-609e2e6a6e001bcbe3da469a0c117fa570ca71aa.zip
[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. llvm-svn: 218601
Diffstat (limited to 'clang/lib/CodeGen/CGExprCXX.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud