diff options
author | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2022-03-25 11:22:44 -0300 |
---|---|---|
committer | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2023-02-09 16:36:05 -0300 |
commit | 88221bd413d969c52ffafd4d31f46ff7357a0c47 (patch) | |
tree | 6f4b053abfc5c0d4ebfcc812866075c8b3692d5b | |
parent | 666ae4f0aed58b7f2b297a9bc0069bbd0ae58de8 (diff) | |
download | glibc-88221bd413d969c52ffafd4d31f46ff7357a0c47.tar.gz |
misc: Disable some atomic tests on clang
clang warns on some atomic macros, disable for now:
tst-atomic.c:463:7: error: unsupported inline asm: input with type
'int64_t' (aka 'long') matching output with type 'typeof (*&mem)' (aka
'int')
if (catomic_exchange_and_add (&mem, 11) != 2
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../sysdeps/x86/atomic-machine.h:213:3: note: expanded from macro
'catomic_exchange_and_add'
__arch_exchange_and_add_body (__arch_exchange_and_add_cprefix,
__arch_c, \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../sysdeps/x86/atomic-machine.h:199:12: note: expanded from macro
'__arch_exchange_and_add_body'
: "0" ((int64_t) cast_to_integer (__addval)),
\
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tst-atomic.c:487:7: error: unsupported inline asm: input with type
'int64_t' (aka 'long') matching output with type 'typeof (*(&mem))' (aka
'int')
if (catomic_increment_val (&mem) != 3)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/atomic.h:313:38: note: expanded from macro
'catomic_increment_val'
# define catomic_increment_val(mem) (catomic_exchange_and_add ((mem), 1)
+ 1)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../sysdeps/x86/atomic-machine.h:213:3: note: expanded from macro
'catomic_exchange_and_add'
__arch_exchange_and_add_body (__arch_exchange_and_add_cprefix,
__arch_c, \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../sysdeps/x86/atomic-machine.h:199:12: note: expanded from macro
'__arch_exchange_and_add_body'
: "0" ((int64_t) cast_to_integer (__addval)),
\
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tst-atomic.c:501:7: error: unsupported inline asm: input with type
'int64_t' (aka 'long') matching output with type 'typeof (*(&mem))' (aka
'int')
if (catomic_decrement_val (&mem) != 15)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/atomic.h:340:38: note: expanded from macro
'catomic_decrement_val'
# define catomic_decrement_val(mem) (catomic_exchange_and_add ((mem),
-1) - 1)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../sysdeps/x86/atomic-machine.h:213:3: note: expanded from macro
'catomic_exchange_and_add'
__arch_exchange_and_add_body (__arch_exchange_and_add_cprefix,
__arch_c, \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../sysdeps/x86/atomic-machine.h:199:12: note: expanded from macro
'__arch_exchange_and_add_body'
: "0" ((int64_t) cast_to_integer (__addval)),
\
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-rw-r--r-- | misc/tst-atomic.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/misc/tst-atomic.c b/misc/tst-atomic.c index 013ce9d0dd..d732265d80 100644 --- a/misc/tst-atomic.c +++ b/misc/tst-atomic.c @@ -459,6 +459,7 @@ do_test (void) ret = 1; } +#ifndef __clang__ mem = 2; if (catomic_exchange_and_add (&mem, 11) != 2 || mem != 13) @@ -466,6 +467,7 @@ do_test (void) puts ("catomic_exchange_and_add test failed"); ret = 1; } +#endif mem = -21; catomic_add (&mem, 22); @@ -483,12 +485,14 @@ do_test (void) ret = 1; } +#ifndef __clang__ mem = 2; if (catomic_increment_val (&mem) != 3) { puts ("catomic_increment_val test failed"); ret = 1; } +#endif mem = 17; catomic_decrement (&mem); @@ -498,11 +502,13 @@ do_test (void) ret = 1; } +#ifndef __clang__ if (catomic_decrement_val (&mem) != 15) { puts ("catomic_decrement_val test failed"); ret = 1; } +#endif /* Tests for C11-like atomics. */ mem = 11; |