From nobody Tue Feb 10 07:40:42 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1506036505115477.58118027710805; Thu, 21 Sep 2017 16:28:25 -0700 (PDT) Received: from localhost ([::1]:55909 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dvAtH-00068V-C8 for importer@patchew.org; Thu, 21 Sep 2017 19:28:19 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:37155) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dvAiB-0004Yh-4l for qemu-devel@nongnu.org; Thu, 21 Sep 2017 19:16:52 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dvAiA-0003tX-7E for qemu-devel@nongnu.org; Thu, 21 Sep 2017 19:16:51 -0400 Received: from mail-wm0-x243.google.com ([2a00:1450:400c:c09::243]:35971) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dvAiA-0003rX-0W for qemu-devel@nongnu.org; Thu, 21 Sep 2017 19:16:50 -0400 Received: by mail-wm0-x243.google.com with SMTP id r136so6436924wmf.3 for ; Thu, 21 Sep 2017 16:16:49 -0700 (PDT) Received: from 640k.lan (dynamic-adsl-78-12-246-117.clienti.tiscali.it. [78.12.246.117]) by smtp.gmail.com with ESMTPSA id u186sm2596278wmd.19.2017.09.21.16.16.47 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 21 Sep 2017 16:16:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references; bh=WP2Nff4CyxJlm1v9ozmYteieqyGtuqLdGvMMyR4Ko3E=; b=XFSCOFoAFAyugVebghqq78DAc2YwPNiwJMFDKMdZ6kVmHR56n+TqA2ekK92FcXnmI1 VqKIiRduCsWmAKxRuPGeNB+Vvh+xGBcf1FEvVTpiaiygUBUeYjxzkX3UM9Oh/cunP3bl Lg7NhQy3Bdz/xIPmXzrW5RT/2rru4KIul+1IYEnyqDFOja8/aF+TDSBZYsWTZ3auHfcU 6ItjbVFo/M+Qxccp2NAmOORqQUtJYoex1EvQ0a80Nj/BWd41VJfXJiA4Z8ST4KtwW85S EVQrLUQTRobnLIZcmdq7dSiRX2+gyn+0xjFC5OlEr0Ll+JqMZQnPT692lYCrLzeyRKdc CQ1w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:subject:date:message-id :in-reply-to:references; bh=WP2Nff4CyxJlm1v9ozmYteieqyGtuqLdGvMMyR4Ko3E=; b=P0fLshSBFT4YejQRQ8f1XyxjP2rlRdt07f/Wm6suilwPLXoYfNvVY5MSCWBvmiO52w L9oWUbRUzKCr5XmByAusCvUWEefVgu67YOpFpa1PcsoeqwIiHVpOfYkLTj99WDUnCmUV dH2kuC6hkZFLimZ08npHp2fC4KdBtEckEaYeLZ1C2eFztvoLNS6Uy2XrNKmfkaJPDWGP f7FC7CUPIKV/0/seG0dqbcP7qOnaC8ONxIxuhp0aW7gCfQcrMKXc1twkuBD8O6x+GAay aWuLfbddvZl4MC8cmf5aASO/Hulic4wFZdTJnN8pTP0cdDfqa1ar9JYbBWFYA7amWBNM D5gw== X-Gm-Message-State: AHPjjUgsWELoqELNhVc/ESgUlzhSSXcXNjGrUIBIDSh397ZAhhF7iNqV y3rNMIFDKt7l4bLoNGv6EXJ3Gdxy X-Google-Smtp-Source: AOwi7QBYbGrATxcqZjaAQTO9rDhiCFmlEdfSgQ6PqZCSW0n+mOiJdcoKq3l2qQl5itNEhGWU6pyYUA== X-Received: by 10.28.137.208 with SMTP id l199mr2052305wmd.123.1506035808739; Thu, 21 Sep 2017 16:16:48 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Date: Fri, 22 Sep 2017 01:16:12 +0200 Message-Id: <1506035800-30509-5-git-send-email-pbonzini@redhat.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1506035800-30509-1-git-send-email-pbonzini@redhat.com> References: <1506035800-30509-1-git-send-email-pbonzini@redhat.com> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::243 Subject: [Qemu-devel] [PULL 04/32] atomic: update documentation X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Signed-off-by: Paolo Bonzini --- docs/devel/atomics.txt | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/docs/devel/atomics.txt b/docs/devel/atomics.txt index 3ef5d85..048e5f2 100644 --- a/docs/devel/atomics.txt +++ b/docs/devel/atomics.txt @@ -63,11 +63,22 @@ operations: typeof(*ptr) atomic_fetch_sub(ptr, val) typeof(*ptr) atomic_fetch_and(ptr, val) typeof(*ptr) atomic_fetch_or(ptr, val) + typeof(*ptr) atomic_fetch_xor(ptr, val) typeof(*ptr) atomic_xchg(ptr, val) typeof(*ptr) atomic_cmpxchg(ptr, old, new) =20 all of which return the old value of *ptr. These operations are -polymorphic; they operate on any type that is as wide as an int. +polymorphic; they operate on any type that is as wide as a pointer. + +Similar operations return the new value of *ptr: + + typeof(*ptr) atomic_inc_fetch(ptr) + typeof(*ptr) atomic_dec_fetch(ptr) + typeof(*ptr) atomic_add_fetch(ptr, val) + typeof(*ptr) atomic_sub_fetch(ptr, val) + typeof(*ptr) atomic_and_fetch(ptr, val) + typeof(*ptr) atomic_or_fetch(ptr, val) + typeof(*ptr) atomic_xor_fetch(ptr, val) =20 Sequentially consistent loads and stores can be done using: =20 --=20 1.8.3.1