From nobody Tue Feb 10 01:31:39 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 216.205.24.124 as permitted sender) client-ip=216.205.24.124; envelope-from=philmd@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 216.205.24.124 as permitted sender) smtp.mailfrom=philmd@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1621363057; cv=none; d=zohomail.com; s=zohoarc; b=Ab5DvLIOjVHcOJP1Ofx6F/+m5HvD79WB4vlrHa7U9A3xPRA6brtONAPbI7/vftDgQoLDn52d5WF0ZvD0C7+o2FwlQvCIcT7AhXjQN94tHjEM5evD+gt/r8ZY15MWBVUhH+CEH+gBiSYItxC5Svmtnv6B1Y/qbvvgldfpOVwcW1g= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1621363057; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:To; bh=n8p69QDofACFxeVoOjBjmu/iSzxD1vYfqseZWJ45KjA=; b=PPm3mR5LApJ3xxHjPoi5+Up9CkfyJCgiDB88tKfQQHGXD1InIlY8Rfii2sWEij7acLYG9v4at/js3gU66GEdbjuKEQqD4pDnZjY6P9jcEgoK/xL5VJ45l62j7/AwetrJrb8vO5RaI6GTIULtf+0Boc4sjrUBpg7HwdF7zV3ssx8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 216.205.24.124 as permitted sender) smtp.mailfrom=philmd@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [216.205.24.124]) by mx.zohomail.com with SMTPS id 1621363057866550.0699620847892; Tue, 18 May 2021 11:37:37 -0700 (PDT) Received: from mail-ed1-f69.google.com (mail-ed1-f69.google.com [209.85.208.69]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-493-VCXFV_fwNDOXBNF-fvynBg-1; Tue, 18 May 2021 14:37:35 -0400 Received: by mail-ed1-f69.google.com with SMTP id c21-20020a0564021015b029038c3f08ce5aso6297477edu.18 for ; Tue, 18 May 2021 11:37:34 -0700 (PDT) Return-Path: Return-Path: Received: from x1w.redhat.com (31.red-83-51-215.dynamicip.rima-tde.net. [83.51.215.31]) by smtp.gmail.com with ESMTPSA id h9sm13225232edt.18.2021.05.18.11.37.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 18 May 2021 11:37:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1621363056; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=n8p69QDofACFxeVoOjBjmu/iSzxD1vYfqseZWJ45KjA=; b=ifUWIXAksaEViOPnlkB2Y3ykdWLUIsxe0BzQBhOoFZpdGy2j18eFMs/FBTrrWnsY1mZGVE adsJd9a21jRxNrcn0jQi2w88E8/hRPqvvmpmNkalGLcDy9ll5eFDw4gND9jt8eqswrJ7PR enyDKGPSnL0fvGtWLsZYNcafTDjbOG8= X-MC-Unique: VCXFV_fwNDOXBNF-fvynBg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=n8p69QDofACFxeVoOjBjmu/iSzxD1vYfqseZWJ45KjA=; b=LnC/b175dDhmYO5z7z8m4S6Wkua6xDrubYTyugzJhpAg2M+3EykPr+/XAQ9vyeDG1z BqIe9H9PzKBAxq0IF1Z5g47utqZyz1ANmLmxXV7OoV6uC2rDkTdO+jSLORUPwK09n46u i+WQvMT19qXMqTbhdv/JvuOW3yk1LG7qQ1gb9G6vW9FknR21/Uzcp/0mQ6UJ0dFSELwS Kbp31f0megc7ucw/8m0zCfkRPxGgCCHlvu5oQxfePxO3jIxVw/GVZ44Rr6Zf3s+DacTF BeY+QYgYXmjYsDzhyfpvkpF7kMYTbucyc8XllvLyi6CmxO4LXkoeYkr8jNDA6h3XkMRV glug== X-Gm-Message-State: AOAM532oYuijbZrTb7mUMecXxGq2ceoMsXLypTNYEAm2mmMl1hKitDX8 CZzKOihTlF/wfNqHOcAj3yCquHkNWSjkZqSWjfzfWH5mDKWMBjKbKuce5bzQeCyADBUBp80sr9l 4NZq4XQchCuq6Zg== X-Received: by 2002:a17:906:4a81:: with SMTP id x1mr7301655eju.508.1621363053191; Tue, 18 May 2021 11:37:33 -0700 (PDT) X-Google-Smtp-Source: ABdhPJykOVKW+em7Z/NJNkl5QhdilcRxADFmTY/4hw9WkTbkkisaLTwsB+C+UB6B7l5E9MHkml9scg== X-Received: by 2002:a17:906:4a81:: with SMTP id x1mr7301636eju.508.1621363053065; Tue, 18 May 2021 11:37:33 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Bibo Mao , "Michael S. Tsirkin" , Richard Henderson , Paolo Bonzini , Jiaxun Yang , Peter Xu , Huacai Chen , Peter Maydell , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [RFC PATCH 07/25] qemu/bswap: Introduce ST_CONVERT() macro Date: Tue, 18 May 2021 20:36:37 +0200 Message-Id: <20210518183655.1711377-8-philmd@redhat.com> X-Mailer: git-send-email 2.26.3 In-Reply-To: <20210518183655.1711377-1-philmd@redhat.com> References: <20210518183655.1711377-1-philmd@redhat.com> MIME-Version: 1.0 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=philmd@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) To be able to add more load/store operations, introduce the ST_CONVERT() macro. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- include/qemu/bswap.h | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/include/qemu/bswap.h b/include/qemu/bswap.h index 2d3bb8bbedd..86f5ded6acf 100644 --- a/include/qemu/bswap.h +++ b/include/qemu/bswap.h @@ -449,6 +449,23 @@ static inline void stq_be_p(void *ptr, uint64_t v) stq_he_p(ptr, be_bswap(v, 64)); } =20 +#define ST_CONVERT_UNALIGNED(bits, vtype, size)\ +static inline void st ## size ## _he_p(void *ptr, vtype v)\ +{\ + __builtin_memcpy(ptr, &v, sizeof(v));\ +} + +#define ST_CONVERT_END(endian, bits, vtype, size)\ +static inline void st ## size ## _ ## endian ## _p(void *ptr, vtype v)\ +{\ + st ## size ## _he_p(ptr, glue(endian, _bswap)(v, bits));\ +} + +#define ST_CONVERT(bits, vtype, size)\ + ST_CONVERT_UNALIGNED(bits, vtype, size)\ + ST_CONVERT_END(le, bits, vtype, size)\ + ST_CONVERT_END(be, bits, vtype, size) + static inline unsigned long leul_to_cpu(unsigned long v) { #if HOST_LONG_BITS =3D=3D 32 --=20 2.26.3