From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1791) id 396583858C3A; Wed, 30 Aug 2023 12:39:54 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 396583858C3A DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1693399196; bh=4yr84vzVb9s9Z7ibUBVCOwyayB0+SfZoSOR6PKNXgNs=; h=From:To:Subject:Date:From; b=WifrbuJWXH109hhog7rK7Frn7eSSXM8Kl+Mz460ptZax1HwbvUDNhZPE1t5xHD6hn jep/zInybq0fUf6Hswbk5tQySJ1uMWItsZjP3gVLMdaRz/SMLCdP2LKwZTPvipFIc0 6FlrDPpve4XS7UMPvn4hyBhdm56Akt3QKUlu3oTg= 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: 300c67ab5cbe5d71177698f87e28c6db78d69e58 X-Git-Newrev: 7c7b84ea80b7cea9ff36ee40eb372cde9b304f86 Message-Id: <20230830123956.396583858C3A@sourceware.org> Date: Wed, 30 Aug 2023 12:39:54 +0000 (GMT) List-Id: https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=7c7b84ea80b7cea9ff36ee40eb372cde9b304f86 commit 7c7b84ea80b7cea9ff36ee40eb372cde9b304f86 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;