From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1791) id EDE683858436; Thu, 21 Dec 2023 18:57:18 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org EDE683858436 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1703185038; bh=RJP0gcjtodMLBzhv9OzD690ef0ueve91dQR52QkT6cw=; h=From:To:Subject:Date:From; b=V4lj99ogenI235tFyn/m89WjM0bHHBZJ0nouHz9pAf+kF4O8FAwyaFZ3nKNLdnEoO Mp+OsZD4YGr+iI/PQQhHkQhiEZzYP0saGqmBGZ6MnIgrA/4uogW4S6DFUJoXKRXeUf F8YcP1da4OWtCB9oiRRiPvfswc10MU3SEiYPnFfc= Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Adhemerval Zanella To: glibc-cvs@sourceware.org Subject: [glibc/azanella/clang] misc: Disable some atomic tests on clang X-Act-Checkin: glibc X-Git-Author: Adhemerval Zanella X-Git-Refname: refs/heads/azanella/clang X-Git-Oldrev: 66f25b3a8b89589dba914d6f247b45b1ba8a7b26 X-Git-Newrev: e24ca2f114bced68bd2352834645835116359f85 Message-Id: <20231221185718.EDE683858436@sourceware.org> Date: Thu, 21 Dec 2023 18:57:18 +0000 (GMT) List-Id: https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e24ca2f114bced68bd2352834645835116359f85 commit e24ca2f114bced68bd2352834645835116359f85 Author: Adhemerval Zanella Date: Fri Mar 25 11:22:44 2022 -0300 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)), \ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Diff: --- misc/tst-atomic.c | 6 ++++++ 1 file changed, 6 insertions(+) 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;