From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1791) id 972983858417; Wed, 7 Feb 2024 14:10:34 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 972983858417 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1707315034; bh=pKKMetraw1uPiTIF1x6njCjnysJoImnGuCICPyBvuUU=; h=From:To:Subject:Date:From; b=uMs5v/YIIFeUaVcs2IssfI5rAqRMLYsaAjyQRCzm61rAZ0YaUn11WJiML7aGrNhCK aWgnXaKLTSwxXvEi7CTTHhP11uSS7uJ7Zfy5wsxgoq053J2KV06xXZ3C1io/2yUWEh rCB13tzr5YENpzGcx11fRxueR25uf3CrmJoWf7Nw= 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: 0b02cb63c84ee0b699268a7c07aa5132b4f225aa X-Git-Newrev: e665c28f187d12e7fab6617f3bc715d2ec5cfdb9 Message-Id: <20240207141034.972983858417@sourceware.org> Date: Wed, 7 Feb 2024 14:10:34 +0000 (GMT) List-Id: https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e665c28f187d12e7fab6617f3bc715d2ec5cfdb9 commit e665c28f187d12e7fab6617f3bc715d2ec5cfdb9 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 65d0752c91..c4de541407 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;