diff options
author | Tim Northover <tnorthover@apple.com> | 2014-03-04 10:10:17 +0000 |
---|---|---|
committer | Tim Northover <tnorthover@apple.com> | 2014-03-04 10:10:17 +0000 |
commit | 11d04ee709db1aff256f904e384aae0d9ac24447 (patch) | |
tree | 92794e4eaee7c799b7b79b29a9adcc9625e6ddac /make | |
parent | 5ad91b8305eac34b7d9a777a7a3c2b098de0fedf (diff) |
ARM: implement __sync_fetch_and_* operations
Since these are primarily useful for deeply embedded targets where code size is
very important, they are each in a separate file making use of infrastructure
in sync-ops.h. This allows a linker to include just the functions that are
actually used.
rdar://problem/14736665
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@202812 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'make')
-rw-r--r-- | make/platform/clang_macho_embedded.mk | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/make/platform/clang_macho_embedded.mk b/make/platform/clang_macho_embedded.mk index d80bfa921..827978e7f 100644 --- a/make/platform/clang_macho_embedded.mk +++ b/make/platform/clang_macho_embedded.mk @@ -204,6 +204,26 @@ THUMB2_FUNCTIONS := \ switch32 \ switch8 \ switchu8 \ + sync_fetch_and_add_4 \ + sync_fetch_and_sub_4 \ + sync_fetch_and_and_4 \ + sync_fetch_and_or_4 \ + sync_fetch_and_xor_4 \ + sync_fetch_and_nand_4 \ + sync_fetch_and_max_4 \ + sync_fetch_and_umax_4 \ + sync_fetch_and_min_4 \ + sync_fetch_and_umin_4 \ + sync_fetch_and_add_8 \ + sync_fetch_and_sub_8 \ + sync_fetch_and_and_8 \ + sync_fetch_and_or_8 \ + sync_fetch_and_xor_8 \ + sync_fetch_and_nand_8 \ + sync_fetch_and_max_8 \ + sync_fetch_and_umax_8 \ + sync_fetch_and_min_8 \ + sync_fetch_and_umin_8 I386_FUNCTIONS := \ i686.get_pc_thunk.eax \ |