{"id":2219156,"url":"http://patchwork.ozlabs.org/api/1.0/patches/2219156/?format=json","project":{"id":14,"url":"http://patchwork.ozlabs.org/api/1.0/projects/14/?format=json","name":"QEMU Development","link_name":"qemu-devel","list_id":"qemu-devel.nongnu.org","list_email":"qemu-devel@nongnu.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20260402125234.1371897-5-max.chou@sifive.com>","date":"2026-04-02T12:52:29","name":"[v6,4/9] target/riscv: rvv: Introduce reset_ill_vtype to reset illegal vtype CSR","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"0e4b87c5ec45554cd47856f8c2db5597be960a65","submitter":{"id":86650,"url":"http://patchwork.ozlabs.org/api/1.0/people/86650/?format=json","name":"Max Chou","email":"max.chou@sifive.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/qemu-devel/patch/20260402125234.1371897-5-max.chou@sifive.com/mbox/","series":[{"id":498485,"url":"http://patchwork.ozlabs.org/api/1.0/series/498485/?format=json","date":"2026-04-02T12:52:26","name":"Add Zvfbfa extension support","version":6,"mbox":"http://patchwork.ozlabs.org/series/498485/mbox/"}],"check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2219156/checks/","tags":{},"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=sifive.com header.i=@sifive.com header.a=rsa-sha256\n header.s=google header.b=QY7ODIQL;\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=lists.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)"],"Received":["from lists.gnu.org (lists.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 4fmjxD1vXjz1xtJ\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 03 Apr 2026 00:53:20 +1100 (AEDT)","from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1w8ILL-0008U9-Rp; Thu, 02 Apr 2026 09:44:19 -0400","from eggs.gnu.org ([2001:470:142:3::10])\n by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <max.chou@sifive.com>)\n id 1w8IL3-0004lE-LH\n for qemu-devel@nongnu.org; Thu, 02 Apr 2026 09:44:03 -0400","from mail-pj1-x1034.google.com ([2607:f8b0:4864:20::1034])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)\n (Exim 4.90_1) (envelope-from <max.chou@sifive.com>)\n id 1w8HXc-0008OE-8I\n for qemu-devel@nongnu.org; Thu, 02 Apr 2026 08:52:57 -0400","by mail-pj1-x1034.google.com with SMTP id\n 98e67ed59e1d1-35c2fe0d90fso474238a91.1\n for <qemu-devel@nongnu.org>; Thu, 02 Apr 2026 05:52:51 -0700 (PDT)","from duncan.localdomain (114-35-142-126.hinet-ip.hinet.net.\n [114.35.142.126]) by smtp.gmail.com with ESMTPSA id\n 98e67ed59e1d1-35dd35364edsm2730032a91.0.2026.04.02.05.52.48\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Thu, 02 Apr 2026 05:52:50 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=sifive.com; s=google; t=1775134371; x=1775739171; darn=nongnu.org;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:from:to:cc:subject:date\n :message-id:reply-to;\n bh=CzAwWber/dJ9Rtdqx7paa1UM5LleVLjenLlZ9/kkQq4=;\n b=QY7ODIQLryAj/lJJ5xZLTAbfDkDDjzBJwiVz71WxUSqT5G1j4l7boNlgO4zoochCau\n sRGVV48pR7kvE5mS7nHH0ZCnD29bbNW0d/gNBkgoHIsIPcfLG6fWdX5swEoeZIPPJS4H\n 4vg9VqY+NtuulBgkrBBgPQSVuwjZFpi3wm/WLlLqurCG/fjqhXfRJzubtk+cVrms0AiG\n mE7eg2f0FOLqdN8XLtXzwVz3F12fKCrptMD1XgL9H8QvLDoU2l4o+dVDdF9ZgDGt4yKr\n 0jhNpcIGEZZVnzUz8uf/TdDH4HbXZK3z6Fe0MHEkvv7rcuwCvBSVKs4NkprMwrD26Yon\n l3jA==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1775134371; x=1775739171;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from\n :to:cc:subject:date:message-id:reply-to;\n bh=CzAwWber/dJ9Rtdqx7paa1UM5LleVLjenLlZ9/kkQq4=;\n b=HXfwhs/uwVt+yIrQSG5aNJJeRcaRVc3FhOOq7wXGevFXB8p28aEZ3WcABn6febgtzV\n fKbh+u3S5dAqnnCa4W2oHCQlybOK9vaKeHNi94ga2JZCSunenGMtrh3vaDACoOyydJHy\n leKkwHswCStm6J601fvimXHpb1ZSkF+zadSyXZWO3w5ggwvkoVs9vTazjlk6Uw1PEBDt\n Mk4Th1YRziiV0/TqFjE68fO74P+BUDFvPMZcXTkogfx2JOCXojW2boQYZ0P3avUxxAlR\n nDRjXPTdN7jT4MU9VZTz7o+6Br3iCHYFi0OpE7QrfjlNC0Pks1n0gKCD+5HCy6uos7lx\n ABQg==","X-Gm-Message-State":"AOJu0YzgFDkSHW9Hfu4BWBD59TJ6aHzscBcjWmH5/9qtPPsy5ihOEjon\n qfuZNxw141fW6Uez+XN5kRx+z78luyxZ0QTDoKOuaAz1IGgfNNh89NA8gbEi/caCdoFer5bOJWn\n te4LuJ0+eQkrrUP5qVmaUTHW9xJmZfTpaP1xQ9cV0Gti9ysz8nHSKdncy9KJGLiAEUPi4gHW9z+\n fnqlw9SaCiE538sMIN0OqKcadoppLUbymg0Ds8FAw=","X-Gm-Gg":"AeBDieslXunKUTTNacF5jrWstlfte17fmDW07SIAli9L01stUpRzCwmwu1PXQBRZz/s\n s4fvjSn8BIt7Rshi0vj2hyZvostxijhV0HLGYL5+4afKOoBknGVFxsmwm6Uh6JCdC3+iuoj3Gi1\n Gte+PcSzUekRvSGoplLBsD+g8kXwAFK6l2/a0q4rxts3vxbH6WdPytaQMLuGgmajaU3g+2UIf+T\n c0BlqzRCNBe2ER9DTMddx6Xa9uJmjT2Z5RvchM/Bhjj5l2zc7WvVhRwVKsmYzKwlI27w5muB3UN\n he6RrRPmhGltZ/8X0HfWPdjY7TVye9BzgQh24JOUdThcDyUgJPqmjIVZ0eM2UBK2AAH/SvfCNog\n oyxx+uSbFQVdsawerzJCZ2rg0adyuq7ytHkHRD9FaeEy+I/Nnmf2mD28QmdmjgDd/irFCx+TOm/\n 1/JutZlIpQ9Pexqheu0TGQHyuuUSVeJGHkliUvD9Y+UY8W4IuC+7J1nunQkShcOSZSNiI004vvO\n XQBN+Rzv/R7jFqRY0pDctIhqvOWcR9Kx7at5A==","X-Received":"by 2002:a17:90a:d450:b0:35d:a0b7:9608 with SMTP id\n 98e67ed59e1d1-35dd4025087mr3209993a91.7.1775134370454;\n Thu, 02 Apr 2026 05:52:50 -0700 (PDT)","From":"Max Chou <max.chou@sifive.com>","To":"qemu-devel@nongnu.org,\n\tqemu-riscv@nongnu.org","Cc":"Palmer Dabbelt <palmer@dabbelt.com>,\n Alistair Francis <alistair.francis@wdc.com>,\n Weiwei Li <liwei1518@gmail.com>,\n Daniel Henrique Barboza <daniel.barboza@oss.qualcomm.com>,\n Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,\n Chao Liu <chao.liu.zevorn@gmail.com>, Max Chou <max.chou@sifive.com>,\n Nutty Liu <nutty.liu@hotmail.com>","Subject":"[PATCH v6 4/9] target/riscv: rvv: Introduce reset_ill_vtype to reset\n illegal vtype CSR","Date":"Thu,  2 Apr 2026 20:52:29 +0800","Message-ID":"<20260402125234.1371897-5-max.chou@sifive.com>","X-Mailer":"git-send-email 2.43.0","In-Reply-To":"<20260402125234.1371897-1-max.chou@sifive.com>","References":"<20260402125234.1371897-1-max.chou@sifive.com>","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","Received-SPF":"pass client-ip=2607:f8b0:4864:20::1034;\n envelope-from=max.chou@sifive.com; helo=mail-pj1-x1034.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=unavailable 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"},"content":"Replace the same vill reset flow by reset_ill_vtype function.\n\nReviewed-by: Daniel Henrique Barboza <daniel.barboza@oss.qualcomm.com>\nReviewed-by: Chao Liu <chao.liu.zevorn@gmail.com>\nReviewed-by: Alistair Francis <alistair.francis@wdc.com>\nReviewed-by: Nutty Liu <nutty.liu@hotmail.com>\nSigned-off-by: Max Chou <max.chou@sifive.com>\n---\n target/riscv/vector_helper.c | 21 +++++++++++----------\n 1 file changed, 11 insertions(+), 10 deletions(-)","diff":"diff --git a/target/riscv/vector_helper.c b/target/riscv/vector_helper.c\nindex 63ca6fe16b..1e0cce5ae5 100644\n--- a/target/riscv/vector_helper.c\n+++ b/target/riscv/vector_helper.c\n@@ -49,6 +49,15 @@ static target_ulong vtype_reserved(CPURISCVState *env, target_ulong vtype)\n     return reserved;\n }\n \n+static inline void reset_ill_vtype(CPURISCVState *env)\n+{\n+    /* only set vill bit. */\n+    env->vill = 1;\n+    env->vtype = 0;\n+    env->vl = 0;\n+    env->vstart = 0;\n+}\n+\n target_ulong HELPER(vsetvl)(CPURISCVState *env, target_ulong s1,\n                             target_ulong s2, target_ulong x0)\n {\n@@ -93,11 +102,7 @@ target_ulong HELPER(vsetvl)(CPURISCVState *env, target_ulong s1,\n     }\n \n     if ((sew > cpu->cfg.elen) || vill || (vtype_reserved(env, s2) != 0)) {\n-        /* only set vill bit. */\n-        env->vill = 1;\n-        env->vtype = 0;\n-        env->vl = 0;\n-        env->vstart = 0;\n+        reset_ill_vtype(env);\n         return 0;\n     }\n \n@@ -113,11 +118,7 @@ target_ulong HELPER(vsetvl)(CPURISCVState *env, target_ulong s1,\n     }\n \n     if (cpu->cfg.rvv_vsetvl_x0_vill && x0 && (env->vl != vl)) {\n-        /* only set vill bit. */\n-        env->vill = 1;\n-        env->vtype = 0;\n-        env->vl = 0;\n-        env->vstart = 0;\n+        reset_ill_vtype(env);\n         return 0;\n     }\n \n","prefixes":["v6","4/9"]}