diff options
author | Cooper Qu <cooper.qu@linux.alibaba.com> | 2021-05-28 17:02:05 +0800 |
---|---|---|
committer | Xianmiao Qu <xianmiao_qu@c-sky.com> | 2021-05-28 18:05:27 +0800 |
commit | f69a1aee157f496e6d3f373fff1b26b03bbf3409 (patch) | |
tree | 6f61a63249735dba1b85779d0d8eff921347f171 | |
parent | c94424b0ed786ec92b6904da69af8b5243b34fdc (diff) | |
download | gcc-f69a1aee157f496e6d3f373fff1b26b03bbf3409.zip gcc-f69a1aee157f496e6d3f373fff1b26b03bbf3409.tar.gz gcc-f69a1aee157f496e6d3f373fff1b26b03bbf3409.tar.bz2 |
C-SKY: Define HAVE_sync_compare_and_swap*.
The SYNC operations are implemented as library functions, not
NSN patterns. As a result, the HAVE defines for the patterns are
not defined. We need to define them to generate the corresponding
__GCC_HAVE_SYNC_COMPARE_AND_SWAP_* and __GCC_ATOMIC_*_LOCK_FREE
defines.
gcc/
* config/csky/csky-linux-elf.h (HAVE_sync_compare_and_swapqi):
Defined.
(HAVE_sync_compare_and_swaphi): Likewise.
(HAVE_sync_compare_and_swapsi): Likewise.
-rw-r--r-- | gcc/config/csky/csky-linux-elf.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/config/csky/csky-linux-elf.h b/gcc/config/csky/csky-linux-elf.h index 58a1f39..e94eb8c 100644 --- a/gcc/config/csky/csky-linux-elf.h +++ b/gcc/config/csky/csky-linux-elf.h @@ -133,3 +133,13 @@ #ifdef IN_LIBGCC2 extern int cacheflush (void *__addr, const int __nbytes, const int __op); #endif + +/* The SYNC operations are implemented as library functions, not + INSN patterns. As a result, the HAVE defines for the patterns are + not defined. We need to define them to generate the corresponding + __GCC_HAVE_SYNC_COMPARE_AND_SWAP_* and __GCC_ATOMIC_*_LOCK_FREE + defines. */ + +#define HAVE_sync_compare_and_swapqi 1 +#define HAVE_sync_compare_and_swaphi 1 +#define HAVE_sync_compare_and_swapsi 1 |