[{"id":3681434,"web_url":"http://patchwork.ozlabs.org/comment/3681434/","msgid":"<51498985-6742-4d9d-b924-07ce873cd531@linaro.org>","list_archive_url":null,"date":"2026-04-23T12:35:57","subject":"Re: [PULL 10/59] include/tcg/tcg-op: extract memory operations to\n tcg-op-mem.h","submitter":{"id":85046,"url":"http://patchwork.ozlabs.org/api/people/85046/","name":"Philippe Mathieu-Daudé","email":"philmd@linaro.org"},"content":"On 23/4/26 12:01, Peter Maydell wrote:\n> From: Pierrick Bouvier <pierrick.bouvier@linaro.org>\n> \n> This new header defines a new type for target virtual address,\n> independent from TCGv and is parameterized by a new define\n> TCG_ADDRESS_BITS (name was suggested by Paolo instead of\n> TARGET_ADDRESS_BITS).\n> \n> By default, tcg-op.h include set this define to TARGET_LONG_BITS, but\n> it's also possible to include only tcg-op-common.h and tcg-op-mem.h and\n> set TCG_ADDRESS_BITS manually, which is what next commits will do.\n> \n> We preserve existing MIT license when extracting this new header.\n> \n> Implemented from:\n> https://lore.kernel.org/qemu-devel/a68321f0-3d54-4909-864c-9793cda05b2a@linaro.org/\n> \n> Suggested-by: Richard Henderson <richard.henderson@linaro.org>\n> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>\n> Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org>\n> Reviewed-by: Richard Henderson <richard.henderson@linaro.org>\n> Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>\n> Message-id: 20260407222208.271838-2-pierrick.bouvier@linaro.org\n> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>\n> ---\n>   include/tcg/tcg-op-mem.h | 126 +++++++++++++++++++++++++++++++++++++++\n>   include/tcg/tcg-op.h     | 100 +------------------------------\n>   2 files changed, 129 insertions(+), 97 deletions(-)\n>   create mode 100644 include/tcg/tcg-op-mem.h\n> \n> diff --git a/include/tcg/tcg-op-mem.h b/include/tcg/tcg-op-mem.h\n> new file mode 100644\n> index 0000000000..36931d1dd5\n> --- /dev/null\n> +++ b/include/tcg/tcg-op-mem.h\n> @@ -0,0 +1,126 @@\n> +/* SPDX-License-Identifier: MIT */\n> +/*\n> + * Target dependent memory related functions.\n> + *\n> + * Copyright (c) 2008 Fabrice Bellard\n> + */\n> +\n> +#ifndef TCG_TCG_OP_MEM_H\n> +#define TCG_TCG_OP_MEM_H\n> +\n> +#ifndef TCG_ADDRESS_BITS\n> +#error TCG_ADDRESS_BITS must be defined\n> +#endif\n> +\n> +#if TCG_ADDRESS_BITS == 32\n> +typedef TCGv_i32 TCGv_va;\n> +#define TCG_TYPE_VA TCG_TYPE_I32\n> +#define tcgv_va_temp tcgv_i32_temp\n> +#define tcgv_va_temp_new tcg_temp_new_i32\n> +#elif TCG_ADDRESS_BITS == 64\n> +typedef TCGv_i64 TCGv_va;\n> +#define TCG_TYPE_VA TCG_TYPE_I64\n> +#define tcgv_va_temp tcgv_i64_temp\n> +#define tcgv_va_temp_new tcg_temp_new_i64\n> +#else\n> +#error\n> +#endif\n> +\n> +static inline void\n> +tcg_gen_qemu_ld_i32(TCGv_i32 v, TCGv_va a, TCGArg i, MemOp m)\n> +{\n> +    tcg_gen_qemu_ld_i32_chk(v, tcgv_va_temp(a), i, m, TCG_TYPE_VA);\n> +}\n\nMissing:\n\n-- >8 --\ndiff --git a/include/tcg/tcg-op-mem.h b/include/tcg/tcg-op-mem.h\nindex 36931d1dd57..ea35a02fb40 100644\n--- a/include/tcg/tcg-op-mem.h\n+++ b/include/tcg/tcg-op-mem.h\n@@ -12,6 +12,8 @@\n  #error TCG_ADDRESS_BITS must be defined\n  #endif\n\n+#include \"tcg/tcg-op-common.h\"\n+\n  #if TCG_ADDRESS_BITS == 32\n  typedef TCGv_i32 TCGv_va;\n  #define TCG_TYPE_VA TCG_TYPE_I32\n---\n\n\"tcg-op-mem.h\" uses methods declared in \"tcg/tcg-op-common.h\":\n\n\n   include/tcg/tcg-op-mem.h:34:5: error: call to undeclared function \n'tcg_gen_qemu_ld_i32_chk'\n    34 |     tcg_gen_qemu_ld_i32_chk(v, tcgv_va_temp(a), i, m, TCG_TYPE_VA);\n       |     ^\n\n   $ git grep -w tcg_gen_qemu_ld_i32_chk\n   include/tcg/tcg-op-common.h:328:void \ntcg_gen_qemu_ld_i32_chk(TCGv_i32, TCGTemp *, TCGArg, MemOp, TCGType);\n   include/tcg/tcg-op-mem.h:35:    tcg_gen_qemu_ld_i32_chk(v, \ntcgv_va_temp(a), i, m, TCG_TYPE_VA);\n   tcg/tcg-op-ldst.c:286:void tcg_gen_qemu_ld_i32_chk(TCGv_i32 val, \nTCGTemp *addr, TCGArg idx,","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256\n header.s=google header.b=rTrAuVN1;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org\n (client-ip=209.51.188.17; helo=lists1p.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)"],"Received":["from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17])\n\t(using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g1bDh6CCyz1yCv\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 23 Apr 2026 22:36:20 +1000 (AEST)","from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists1p.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1wFtHt-0007tf-S2; Thu, 23 Apr 2026 08:36:10 -0400","from eggs.gnu.org ([2001:470:142:3::10])\n by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <philmd@linaro.org>) id 1wFtHq-0007pn-G7\n for qemu-devel@nongnu.org; Thu, 23 Apr 2026 08:36:06 -0400","from mail-wm1-x332.google.com ([2a00:1450:4864:20::332])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)\n (Exim 4.90_1) (envelope-from <philmd@linaro.org>) id 1wFtHk-00014f-SJ\n for qemu-devel@nongnu.org; Thu, 23 Apr 2026 08:36:04 -0400","by mail-wm1-x332.google.com with SMTP id\n 5b1f17b1804b1-48a563e4ef7so31298885e9.0\n for <qemu-devel@nongnu.org>; Thu, 23 Apr 2026 05:35:59 -0700 (PDT)","from [192.168.69.210] (88-187-86-199.subs.proxad.net.\n [88.187.86.199]) by smtp.gmail.com with ESMTPSA id\n 5b1f17b1804b1-488fb7a06f3sm190687685e9.22.2026.04.23.05.35.57\n (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);\n Thu, 23 Apr 2026 05:35:57 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=linaro.org; s=google; t=1776947759; x=1777552559; darn=nongnu.org;\n h=content-transfer-encoding:in-reply-to:from:references:to\n :content-language:subject:user-agent:mime-version:date:message-id\n :from:to:cc:subject:date:message-id:reply-to;\n bh=QLzYsEeo1H5y7cODwI5WfN2h4MJyTe8w40oNzlVxZbc=;\n b=rTrAuVN1BVD0jn8LFG+0U7IETMZ0b/6m4hdybZSty1LkHGm6G3pCAtoPoYUgfw86JS\n IY0QvcbVQXzEAhNl+euynt5V3f7G+WIrJXScnWKiZ66TQWeh3dCKoMhppO3GlPphIZx1\n NucCK6GPVvjugG5GXq3d0/McWy1g6d4che/HAFAZBjJ/UIrjGZ3VssbGtznDPwGaTO3Q\n q6/pnaMtpWq8gmSbKd9u2/2xlFNV8oJxrbr9C6D3EbzSU2m3nLsExQNNGVWRxzEZ/Uxx\n VHbVlHl7mN4NF8P3RhPS6UbkMP+I+YKA43z7xTBakMMZiaRcN8ltXD+DCf1WYuLkegEV\n YfOw==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1776947759; x=1777552559;\n h=content-transfer-encoding:in-reply-to:from:references:to\n :content-language:subject:user-agent:mime-version:date:message-id\n :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id\n :reply-to;\n bh=QLzYsEeo1H5y7cODwI5WfN2h4MJyTe8w40oNzlVxZbc=;\n b=N2bo8St7gMWOQAAvQ861lEqBgljB/vXgqzpyuRxgMJr1NZNnRHVT7CwSlVTI5m1t1O\n qbBzfp8tbm9dPREurpg9hOwuIQtjra14qIe09zpUtdUczYu+K9qxivlW+6Jc+YmvWLzF\n Zpq6u9EOlCpwGJCkrj8SoBEVNpXTepBYlAh1JoogqPNqGztM35q6AGGWzC7PQ70HLftG\n k317cLlF6iwpT5IxnmjgMcuKjiASvOClUlcw3oGNblMOYnhZ4nocaxxV2eXsL/EAotO3\n GBjOKcaKLYUE457hBJFIXvXLT650ANd8VgZgbTipwFn1geAsmmsZTtyed35FaqNAq/af\n 3NHQ==","X-Forwarded-Encrypted":"i=1;\n AFNElJ+cfUdBJMxer2FgN81D5NSs/HmA9oYzj2/0YWAkIsDmq6SjuWIFul7O+aEK33V/rstmGt/ROlSDEsZN@nongnu.org","X-Gm-Message-State":"AOJu0YzbKytyu8HA9RSSpmlCXIbIJoFpyGl1bM/TDSnkRTPi/T/Dxs3T\n MZYpxDgQ5qvBoIi/5EaWD1Rti6rtF240oVdhXaor/dezs/+ZdHU9LkN71jnX+wi8F9pQJ5hfemm\n rkIzFr54=","X-Gm-Gg":"AeBDietsoGM00bI+LGAp8bc/iEPRi4XZbX2CJys6/82ZvFybHaCKnAP3ClzptagiRrT\n RnJ0JPTXhm84qD39gNBRPxnW61FYtYAdvmlrpCwNoTIEcXDuulMhUItuYagJ0soWhJtrJrB3xhG\n L+yDRylPh/9eDh1u/5cJ+NLc40Ig96OBRhLDB3tQ+ViIqNs6YCQnBB+WdiL7cWdJzUbRCukx7+e\n DKeQZeGiFUosZ/o1MGwKGLfsZiqPGtgpJ55aIsoc+hZevk2ArW/6nHHnPATzOjP+HE3iVbJjyOk\n O4G+fx0vRBW7I+Z6qDLNYWXTuzckprmzTMl+t4oMqg6SaKHUscXSBYHnpQtOkt8GFqZ5X5Y9hr3\n 2UxmR2CX2Mgr7WDueNiIn0WP3kTW7Qtteflmz++iWSR4tNKXLx496Msi3+CnFcbWBfqvRoLUVbH\n CX+vtmLsDfnCcVeN0E/kZkyrCnMqedDQfm2I574prZ7TnN3T6+fEu4v4LLkeLa01wfnbACOVlwj\n TW9","X-Received":"by 2002:a05:600c:8183:b0:486:fd5c:2b35 with SMTP id\n 5b1f17b1804b1-488fb750809mr396554285e9.13.1776947758429;\n Thu, 23 Apr 2026 05:35:58 -0700 (PDT)","Message-ID":"<51498985-6742-4d9d-b924-07ce873cd531@linaro.org>","Date":"Thu, 23 Apr 2026 14:35:57 +0200","MIME-Version":"1.0","User-Agent":"Mozilla Thunderbird","Subject":"Re: [PULL 10/59] include/tcg/tcg-op: extract memory operations to\n tcg-op-mem.h","Content-Language":"en-US","To":"Peter Maydell <peter.maydell@linaro.org>, qemu-devel@nongnu.org","References":"<20260423100229.2941820-1-peter.maydell@linaro.org>\n <20260423100229.2941820-11-peter.maydell@linaro.org>","From":"=?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>","In-Reply-To":"<20260423100229.2941820-11-peter.maydell@linaro.org>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"8bit","Received-SPF":"pass client-ip=2a00:1450:4864:20::332;\n envelope-from=philmd@linaro.org; helo=mail-wm1-x332.google.com","X-Spam_score_int":"-20","X-Spam_score":"-2.1","X-Spam_bar":"--","X-Spam_report":"(-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,\n DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,\n RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,\n SPF_PASS=-0.001 autolearn=ham autolearn_force=no","X-Spam_action":"no action","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"qemu development <qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<https://lists.nongnu.org/archive/html/qemu-devel>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org"}},{"id":3681448,"web_url":"http://patchwork.ozlabs.org/comment/3681448/","msgid":"<CAFEAcA90md66h-73qDBX=jX4jvD9j4z5F1puv4awho3gCUQ9nQ@mail.gmail.com>","list_archive_url":null,"date":"2026-04-23T12:52:07","subject":"Re: [PULL 10/59] include/tcg/tcg-op: extract memory operations to\n tcg-op-mem.h","submitter":{"id":5111,"url":"http://patchwork.ozlabs.org/api/people/5111/","name":"Peter Maydell","email":"peter.maydell@linaro.org"},"content":"On Thu, 23 Apr 2026 at 13:35, Philippe Mathieu-Daudé <philmd@linaro.org> wrote:\n>\n> On 23/4/26 12:01, Peter Maydell wrote:\n> > From: Pierrick Bouvier <pierrick.bouvier@linaro.org>\n> >\n> > This new header defines a new type for target virtual address,\n> > independent from TCGv and is parameterized by a new define\n> > TCG_ADDRESS_BITS (name was suggested by Paolo instead of\n> > TARGET_ADDRESS_BITS).\n> >\n> > By default, tcg-op.h include set this define to TARGET_LONG_BITS, but\n> > it's also possible to include only tcg-op-common.h and tcg-op-mem.h and\n> > set TCG_ADDRESS_BITS manually, which is what next commits will do.\n\n>\n> Missing:\n>\n> -- >8 --\n> diff --git a/include/tcg/tcg-op-mem.h b/include/tcg/tcg-op-mem.h\n> index 36931d1dd57..ea35a02fb40 100644\n> --- a/include/tcg/tcg-op-mem.h\n> +++ b/include/tcg/tcg-op-mem.h\n> @@ -12,6 +12,8 @@\n>   #error TCG_ADDRESS_BITS must be defined\n>   #endif\n>\n> +#include \"tcg/tcg-op-common.h\"\n> +\n>   #if TCG_ADDRESS_BITS == 32\n>   typedef TCGv_i32 TCGv_va;\n>   #define TCG_TYPE_VA TCG_TYPE_I32\n> ---\n>\n> \"tcg-op-mem.h\" uses methods declared in \"tcg/tcg-op-common.h\"\n\nYes, but all two of the places that include tcg-op-mem.h\ninclude tcg-op-common.h (directly or indirectly) first.\n\nI agree that it would be nicer for the header to explicitly\ninclude what it uses, but do we really need to mess around\nre-rolling the pullreq just for this? I would rather not...\n\n-- PMM","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256\n header.s=google header.b=qtgEQmKf;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org\n (client-ip=209.51.188.17; helo=lists1p.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)"],"Received":["from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17])\n\t(using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g1bc53w2sz1yCv\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 23 Apr 2026 22:53:07 +1000 (AEST)","from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists1p.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1wFtXd-0002z2-Jd; Thu, 23 Apr 2026 08:52:25 -0400","from eggs.gnu.org ([2001:470:142:3::10])\n by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <peter.maydell@linaro.org>)\n id 1wFtXb-0002yk-93\n for qemu-devel@nongnu.org; Thu, 23 Apr 2026 08:52:23 -0400","from mail-yx1-xb133.google.com ([2607:f8b0:4864:20::b133])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)\n (Exim 4.90_1) (envelope-from <peter.maydell@linaro.org>)\n id 1wFtXY-0000W2-6S\n for qemu-devel@nongnu.org; Thu, 23 Apr 2026 08:52:23 -0400","by mail-yx1-xb133.google.com with SMTP id\n 956f58d0204a3-654672a6d68so863964d50.0\n for <qemu-devel@nongnu.org>; Thu, 23 Apr 2026 05:52:19 -0700 (PDT)"],"ARC-Seal":"i=1; a=rsa-sha256; t=1776948739; cv=none;\n d=google.com; s=arc-20240605;\n b=kOci60hB2Yp8OFUMgbXHZyKfK+STYMeKGSeaxOMjYsHgVjWtegaKkN8kbOUKJO5raA\n RUfoH2FEZaC4nbbKNx2bhfRBLMI03M+ELpU3gxj9Puhvq4E525m+kEz4EVtvSdhSTpo2\n PuYN3WLpM5OrqyX9mIYJDm30x/iEn3sADlz8PbJjszOG1CHQ9AjAiUfT4VidUYDsEbKf\n 0C2lUI+htdH0sR7QF/IpJGhPaVpclcGDsD5c6zpAvTvwxELuWGslN5yf+xijFdnalZdZ\n nkUs1HwU7H6PGYQ2+2kZldGEqAGSaHyEoPdNdyXMyflJSRVI/puBll9+aV7j/XwVFxh5\n LxOw==","ARC-Message-Signature":"i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;\n s=arc-20240605;\n h=content-transfer-encoding:cc:to:subject:message-id:date:from\n :in-reply-to:references:mime-version:dkim-signature;\n bh=98iGWxy2WlsLSGh/rC2LM2VieUzajCJwpG0bN2vnSp8=;\n fh=zpiKzW8LH3ELwKzluQ3AheUCgrr23INy4hQ6ZjBUBr4=;\n b=SuQb+JzlIbV1rz64Ci7JugHayjscUi7pKFr6bt9t0uT2eZ3nbnBlGwnfliArMqCIzS\n wp4VUflNcFKkHIAmVwJesILlCCWgBkQX3hrqzNVe1ghRhd518bWChaa9jLCjfrZvBxBm\n KIaaaxYrBSEBfbVH43lE/akEA7quQxpbmilOleus6m9DIsxpu9IGuH1IR07Nrehu0hAV\n bKLtCBjKA6W0ZwXTDADQufNTFOuXyFhVSEANnyQ+Dy7CG/Y8WPr9dyk8ZRc5BUGWHMDc\n Sprn4NpWKnctB8KZsCI3i8JbKKWsjM1sF7O7OvSVLO95TmhXh8sGpHZW6FIvq9wLzubr\n 1h+w==; darn=nongnu.org","ARC-Authentication-Results":"i=1; mx.google.com; arc=none","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=linaro.org; s=google; t=1776948739; x=1777553539; darn=nongnu.org;\n h=content-transfer-encoding:cc:to:subject:message-id:date:from\n :in-reply-to:references:mime-version:from:to:cc:subject:date\n :message-id:reply-to;\n bh=98iGWxy2WlsLSGh/rC2LM2VieUzajCJwpG0bN2vnSp8=;\n b=qtgEQmKfW1WUkhlnjm34f/vTwigfkgUljqMP1khT8Ws4T0KuJliCMVADOaFnkQMmLz\n xGoHISJw0+aYyd9BczFYeMoo1RKnPZQ45p241XB6V+EhdzjFYKHVOTBcUloQdzBf9aNK\n naqQyKPw7300eCVjKA+a5mkxTUYl6pivJefoYmfCm5J7vc8PxmStyAuDcDkx5XsgNdsU\n XqRQuF1Dz4NyVFWIvaisJ5d0jb4votMkOUZvHtGNer4TWdzj5kEoo02zr0jgD1eG9OEs\n myJ3thhS8zgjxFnbryshmxTq3/6v/eqiLaS7DFPfePi4FDT1jJw+q3ly6tE9rORqcrv+\n NGEw==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1776948739; x=1777553539;\n h=content-transfer-encoding:cc:to:subject:message-id:date:from\n :in-reply-to:references:mime-version:x-gm-gg:x-gm-message-state:from\n :to:cc:subject:date:message-id:reply-to;\n bh=98iGWxy2WlsLSGh/rC2LM2VieUzajCJwpG0bN2vnSp8=;\n b=aZZNmOJk8Oo/vbQ5N1kNPzd2uCNSRdBV/rNMztgYH6Cs0WM3a+XsM8lkTNhyPtfXT7\n tXvuXG2bxYZXj/zEZ6l8u4rg3eqandoKxQDoNc+HCGKQwpQMLvfOfCelwBYegs+dWfcX\n P8a8jUX0xkkHfLKpWarl+buUje2GWyasL4XhdCeZRnmRkVxS/TfYQNZDtNhxwEsUmIm6\n hCXIWyx/8O6UAoMc3W1uQbdhplACXgYzyb9i7d1aQxKnmd+riO3lGoqz61VBk9wWkIXI\n WoyehSfGQD94EGz69pXmtK+It2WkisnnF4VAB7UouLfuujjeSYQMFtlq5yhx7OjY8ZBv\n EaeQ==","X-Gm-Message-State":"AOJu0Yz5nJuzk6uCoIe1HBSKLmYQY3HXhddLAyBGa7nyRFR08sWnkEVs\n ndL+GUF20Q0R74JcritNJUYPBQfu8DKX3mGJcgYeC7vMJafWqvT8Sd3Zjpne23Fgvq/LxguNNkn\n omxAzGhAYWAtD/ThJvOqEowZT19L4+5jPJddBAnehbw==","X-Gm-Gg":"AeBDietzRKBeNkEQb2ckBhEv7t/bzbzwu6cSBI9F7DfiHuvloj5ikKVLYZvggGG4cUJ\n b7wvkc01K5gErEnXoj8qXCn6wpJxvrVke1Nfas0Q+qU6FTR6TieVHbAXpqZB3YkcqXUOETjq3GM\n pqH+H8PHoKl9d448fQiT2fj2gSBUb2HO7OPfgTxJqPd48gqTlml1fyE/TD3a3TCdc3OsAFjY3LT\n hJib/7f89PsLz1xQuq+CJNZPnGtI0dlslgpnMsOUO+BX+azEuyXTXYy7yOw7p+lQScG1JLGbED8\n 3kg1s+PWQATqKMl5WNdyGmXYCH93VmxCTomWyatHF62WqrFNuh+OnJd7eww/M1eW/bU+7F4xI3I\n Q4A==","X-Received":"by 2002:a05:690e:128a:b0:650:1cf8:f608 with SMTP id\n 956f58d0204a3-65310a62a92mr25618151d50.45.1776948738747; Thu, 23 Apr 2026\n 05:52:18 -0700 (PDT)","MIME-Version":"1.0","References":"<20260423100229.2941820-1-peter.maydell@linaro.org>\n <20260423100229.2941820-11-peter.maydell@linaro.org>\n <51498985-6742-4d9d-b924-07ce873cd531@linaro.org>","In-Reply-To":"<51498985-6742-4d9d-b924-07ce873cd531@linaro.org>","From":"Peter Maydell <peter.maydell@linaro.org>","Date":"Thu, 23 Apr 2026 13:52:07 +0100","X-Gm-Features":"AQROBzBiMZHKtar2btUyf40BoVGDUIymt12ZWtml6JYqjvUym48WWNzRNJbf_r0","Message-ID":"\n <CAFEAcA90md66h-73qDBX=jX4jvD9j4z5F1puv4awho3gCUQ9nQ@mail.gmail.com>","Subject":"Re: [PULL 10/59] include/tcg/tcg-op: extract memory operations to\n tcg-op-mem.h","To":"=?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>","Cc":"qemu-devel@nongnu.org","Content-Type":"text/plain; charset=\"UTF-8\"","Content-Transfer-Encoding":"quoted-printable","Received-SPF":"pass client-ip=2607:f8b0:4864:20::b133;\n envelope-from=peter.maydell@linaro.org; helo=mail-yx1-xb133.google.com","X-Spam_score_int":"-20","X-Spam_score":"-2.1","X-Spam_bar":"--","X-Spam_report":"(-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,\n DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,\n RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,\n SPF_PASS=-0.001 autolearn=ham autolearn_force=no","X-Spam_action":"no action","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"qemu development <qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<https://lists.nongnu.org/archive/html/qemu-devel>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org"}},{"id":3681463,"web_url":"http://patchwork.ozlabs.org/comment/3681463/","msgid":"<1f824470-4144-4212-a34c-2cc70684b411@linaro.org>","list_archive_url":null,"date":"2026-04-23T13:25:42","subject":"Re: [PULL 10/59] include/tcg/tcg-op: extract memory operations to\n tcg-op-mem.h","submitter":{"id":85046,"url":"http://patchwork.ozlabs.org/api/people/85046/","name":"Philippe Mathieu-Daudé","email":"philmd@linaro.org"},"content":"On 23/4/26 14:52, Peter Maydell wrote:\n> On Thu, 23 Apr 2026 at 13:35, Philippe Mathieu-Daudé <philmd@linaro.org> wrote:\n>>\n>> On 23/4/26 12:01, Peter Maydell wrote:\n>>> From: Pierrick Bouvier <pierrick.bouvier@linaro.org>\n>>>\n>>> This new header defines a new type for target virtual address,\n>>> independent from TCGv and is parameterized by a new define\n>>> TCG_ADDRESS_BITS (name was suggested by Paolo instead of\n>>> TARGET_ADDRESS_BITS).\n>>>\n>>> By default, tcg-op.h include set this define to TARGET_LONG_BITS, but\n>>> it's also possible to include only tcg-op-common.h and tcg-op-mem.h and\n>>> set TCG_ADDRESS_BITS manually, which is what next commits will do.\n> \n>>\n>> Missing:\n>>\n>> -- >8 --\n>> diff --git a/include/tcg/tcg-op-mem.h b/include/tcg/tcg-op-mem.h\n>> index 36931d1dd57..ea35a02fb40 100644\n>> --- a/include/tcg/tcg-op-mem.h\n>> +++ b/include/tcg/tcg-op-mem.h\n>> @@ -12,6 +12,8 @@\n>>    #error TCG_ADDRESS_BITS must be defined\n>>    #endif\n>>\n>> +#include \"tcg/tcg-op-common.h\"\n>> +\n>>    #if TCG_ADDRESS_BITS == 32\n>>    typedef TCGv_i32 TCGv_va;\n>>    #define TCG_TYPE_VA TCG_TYPE_I32\n>> ---\n>>\n>> \"tcg-op-mem.h\" uses methods declared in \"tcg/tcg-op-common.h\"\n> \n> Yes, but all two of the places that include tcg-op-mem.h\n> include tcg-op-common.h (directly or indirectly) first.\n> \n> I agree that it would be nicer for the header to explicitly\n> include what it uses, but do we really need to mess around\n> re-rolling the pullreq just for this? I would rather not...\n\nRight, there is no build issue as of this commit, no objection\non my side!","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256\n header.s=google header.b=kwScoyv+;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org\n (client-ip=209.51.188.17; helo=lists1p.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)"],"Received":["from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17])\n\t(using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g1cL60hxmz1yD5\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 23 Apr 2026 23:26:06 +1000 (AEST)","from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists1p.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1wFu44-0003kB-EY; Thu, 23 Apr 2026 09:25:56 -0400","from eggs.gnu.org ([2001:470:142:3::10])\n by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <philmd@linaro.org>) id 1wFu3x-0003jh-Br\n for qemu-devel@nongnu.org; Thu, 23 Apr 2026 09:25:50 -0400","from mail-wm1-x331.google.com ([2a00:1450:4864:20::331])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)\n (Exim 4.90_1) (envelope-from <philmd@linaro.org>) id 1wFu3v-0007vk-Rj\n for qemu-devel@nongnu.org; Thu, 23 Apr 2026 09:25:49 -0400","by mail-wm1-x331.google.com with SMTP id\n 5b1f17b1804b1-4893940bb5eso29054435e9.3\n for <qemu-devel@nongnu.org>; Thu, 23 Apr 2026 06:25:46 -0700 (PDT)","from [192.168.69.210] (88-187-86-199.subs.proxad.net.\n [88.187.86.199]) by smtp.gmail.com with ESMTPSA id\n 5b1f17b1804b1-48a5aa3ae83sm231037915e9.12.2026.04.23.06.25.43\n (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);\n Thu, 23 Apr 2026 06:25:43 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=linaro.org; s=google; t=1776950745; x=1777555545; darn=nongnu.org;\n h=content-transfer-encoding:in-reply-to:from:references:cc:to\n :content-language:subject:user-agent:mime-version:date:message-id\n :from:to:cc:subject:date:message-id:reply-to;\n bh=GBQJ37pdj0iO3MirJTdDqgAoD6wwc1j7rJJtObYB5gk=;\n b=kwScoyv+OrZCOE/5HD3V/CS+3YGuFD0AtLPie+PVwGFfqTipGCZVHnN2pa3iIRTq+e\n pY9frlXxPuMh15nY5OBCXm1aWrkAR40dhjsQfBHE22rL7B52TEABPYs1acWx1NgXyKkg\n B6PY2IpmXBUMLf266yCR9FXcZN0j+YHND9J3bCaHnyxshhIWeLvgq5FUboc42xjzkXf8\n CLgnHYA20EdHbt1x9TdfeYUE0WPURN0lQVBdA71t5m37HYNgGW80jiOJusQwTZmeb6h0\n 5D6nVMWX5CBztss9VgAodM1qMY7sKmMTJ8pnR8Weg1ctku6Qwvh2E+UQ++XyWVpPsyjo\n T4aA==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1776950745; x=1777555545;\n h=content-transfer-encoding:in-reply-to:from:references:cc:to\n :content-language:subject:user-agent:mime-version:date:message-id\n :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id\n :reply-to;\n bh=GBQJ37pdj0iO3MirJTdDqgAoD6wwc1j7rJJtObYB5gk=;\n b=UoMQXQnCMs5IBFwYttUgiBirQ2tnL423WO8Z0a7EC4ElgwA9LGkjyVoOH7BxkPm8id\n alzFTMx2Vbzj3RaDZSNNpBPNvm8F1yoemUPamU6oLkJhbn4N41d6FE8n15xkfd6Koyxd\n ww9sqtVcWTP+aiSQpuvdzbLYQK4HRfrQ7N8/dNr6Kfc/Z44q/eT1FlPJpNyAcwsaneze\n w783BCNtSKwWCF7R1saVhW7ocTi0m7F4kq/EeChBH91HjqxrLWvmDSl084YMDuEGo1/X\n 9jg2FZHALBorPnUBeIV1azIgs0cmyYlHl4rJ+xG+0wvRj/tT2UtZz/iagQdhiSxqhlNw\n oswg==","X-Gm-Message-State":"AOJu0Yz/vqUGcCANX1Ge+OguSKO/YB64St6Y0Fh+B9LcBx4Mu8RRBOxF\n 9q+B2LpAET1E9YmbaXwxLrwVWyja26Y2sFUz4vKgq/1hMxjlCdy5WGzYa9/qEh+ovc73IeZ5MNh\n Pl32DSJA=","X-Gm-Gg":"AeBDieucZ/VFMJw48w/YBkNT+ZacLT8I/WRAiyYi3K2pPN1y9gVffLnZ8sUh0n5hn8q\n D/4t+h9Imgq/3jKVqBtqB5lCUQmBeCLDNNmVMOO3j8XVbjl7IG8TGILmarIoRabnOrCoaEFZqpT\n 5X9z0dxjmFIwSnAF+1ejvBPDenzixZ8k9u3pllQ/aAr345xkgdAmxwCHL6yL5kShh/IRzwF0ln9\n GUvnWTJiOGI8D1CMrO62tEHIBU9jUuNvw2Sn6rPUxCIBlxvbDB/Kduuz0E7ImZ3vGJANt0TuWbU\n 53gVdN0DO2rzcA+lDvOTXoXLEr30cyGtLMPqKruEz0+sC0+RZxa705CzFU8bigHPsjk40Xj9aNR\n 0VZQoQbULT7Q3d3bWcEQLyK5FxjTqvBn9kGptbNHLHuRX6ZEjAyJGmyKIKJWWZdYfVgFivo/bLK\n zRm6FBkQ/VnN6285UAFEWLeF54D+zes8BltD63ODgXoeCdf+RATkoRj3Rq8i1dAvmXHnYn81eiZ\n tdy","X-Received":"by 2002:a05:600c:8284:b0:489:1f3e:5f69 with SMTP id\n 5b1f17b1804b1-4891f3e629bmr236254325e9.18.1776950744995;\n Thu, 23 Apr 2026 06:25:44 -0700 (PDT)","Message-ID":"<1f824470-4144-4212-a34c-2cc70684b411@linaro.org>","Date":"Thu, 23 Apr 2026 15:25:42 +0200","MIME-Version":"1.0","User-Agent":"Mozilla Thunderbird","Subject":"Re: [PULL 10/59] include/tcg/tcg-op: extract memory operations to\n tcg-op-mem.h","Content-Language":"en-US","To":"Peter Maydell <peter.maydell@linaro.org>,\n Richard Henderson <richard.henderson@linaro.org>","Cc":"qemu-devel@nongnu.org","References":"<20260423100229.2941820-1-peter.maydell@linaro.org>\n <20260423100229.2941820-11-peter.maydell@linaro.org>\n <51498985-6742-4d9d-b924-07ce873cd531@linaro.org>\n <CAFEAcA90md66h-73qDBX=jX4jvD9j4z5F1puv4awho3gCUQ9nQ@mail.gmail.com>","From":"=?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>","In-Reply-To":"\n <CAFEAcA90md66h-73qDBX=jX4jvD9j4z5F1puv4awho3gCUQ9nQ@mail.gmail.com>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"8bit","Received-SPF":"pass client-ip=2a00:1450:4864:20::331;\n envelope-from=philmd@linaro.org; helo=mail-wm1-x331.google.com","X-Spam_score_int":"-20","X-Spam_score":"-2.1","X-Spam_bar":"--","X-Spam_report":"(-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,\n DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,\n RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,\n SPF_PASS=-0.001 autolearn=ham autolearn_force=no","X-Spam_action":"no action","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"qemu development <qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<https://lists.nongnu.org/archive/html/qemu-devel>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org"}}]