From patchwork Wed Feb 21 08:20:00 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Tokarev X-Patchwork-Id: 774498 Delivered-To: patch@linaro.org Received: by 2002:a5d:6ac2:0:b0:33b:4db1:f5b3 with SMTP id u2csp145679wrw; Wed, 21 Feb 2024 00:23:17 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCUyE9Ft2DCprlXtztCM7AqVA8/HHo3vktu1ZCqlolxZ0SARgSdY3kXNJc9aIOIeT9IbD5L9hZwRTrVXwT6oTSHV X-Google-Smtp-Source: AGHT+IG170aRKLRGo6Wxp31jbcfwPrwW9OwspUssph2mRuhxX4I7cdMh9dv6k6NCJGIAbDVWYv1V X-Received: by 2002:a05:620a:1673:b0:787:251a:4017 with SMTP id d19-20020a05620a167300b00787251a4017mr19433469qko.64.1708503797661; Wed, 21 Feb 2024 00:23:17 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1708503797; cv=none; d=google.com; s=arc-20160816; b=JFRskUcSQiKvJK/Utv7AuSrA2Hjg+MF1jA+rLo62SCBWRISTXnEyghPFH1LaUqsTa6 IBHnr6g1e9+R7Vyg3y5UAq6fTMGiYsGyf88Vvcro3LgtNKJ5iYsj7WV/dyeA7bs4H7a4 Wc41YP0YG1WnfndoJOHlXgjT2C0xSntCNvFtwn5xxqJ2j1qXNGMXxewbx6sx22aYxDf5 8yv+UNcyhl4ZgOn/j/x2xEKjQbJKfhJa9V36j2MwdaaqvM4elDGlsaR4RmyCcRg6xJQ3 oUCqP2cg7E/6K0QQHr1bnBJV5CZQpnGvKlaIpC/B8uNt9oR+BRg5YaIYcnYaWM7vzBaA +vNA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from; bh=ItyTnqHiu/Q8a9GY4IgnGd5x76a0/hh7RoYT1kwY8w0=; fh=Ai/7iYl8PqklBRG+OcSfTczWOCBx0/sAgKz4aM3nNvc=; b=l+sNOa4W1M9hbFBu9nUp1E/PNdW8V4AGk3aS8EN2O4Helr1ikEgqmIlFEUKkkq7Pn+ 96sU8X/U2INCExaY2OTTpUN+BOcxmQIDyKr+4zdrqD6KicKrazBPFMrWDWKmBzvT6eb3 fiU5r4/JpHemU/eeFxHHgAlBD/w6ZIGMc+nr8xLK+viWNqJLOGj7mt4dqeIV8Uq/6XEi /equ+xCgbUKAci3ukAccVhsbnjPs7QbQ/cxovxI/OvvIWxOqI1g3UU5XteGmGz8sUn10 B2jkSFU/3gigN/4tUmT89lrKZqp8D9PaP3kEk1A768gTzJkVSwJi6D+l06smdsrg5ALK Wq3Q==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org" Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id b16-20020a05620a0cd000b00785d42ba348si9745286qkj.155.2024.02.21.00.23.17 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Wed, 21 Feb 2024 00:23:17 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org" Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rchrU-0001i9-2f; Wed, 21 Feb 2024 03:21:53 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rchrM-0001ZL-G2; Wed, 21 Feb 2024 03:21:45 -0500 Received: from isrv.corpit.ru ([86.62.121.231]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rchrK-0002Bj-JM; Wed, 21 Feb 2024 03:21:44 -0500 Received: from tsrv.corpit.ru (tsrv.tls.msk.ru [192.168.177.2]) by isrv.corpit.ru (Postfix) with ESMTP id A7FC34F3CA; Wed, 21 Feb 2024 11:21:20 +0300 (MSK) Received: from tls.msk.ru (mjt.wg.tls.msk.ru [192.168.177.130]) by tsrv.corpit.ru (Postfix) with SMTP id 74664860A9; Wed, 21 Feb 2024 11:20:59 +0300 (MSK) Received: (nullmailer pid 2142022 invoked by uid 1000); Wed, 21 Feb 2024 08:20:58 -0000 From: Michael Tokarev To: qemu-devel@nongnu.org Cc: qemu-stable@nongnu.org, Richard Henderson , Song Gao , Michael Tokarev Subject: [Stable-8.2.2 12/60] tcg/loongarch64: Set vector registers call clobbered Date: Wed, 21 Feb 2024 11:20:00 +0300 Message-Id: <20240221082058.2141850-12-mjt@tls.msk.ru> X-Mailer: git-send-email 2.39.2 In-Reply-To: References: MIME-Version: 1.0 Received-SPF: pass client-ip=86.62.121.231; envelope-from=mjt@tls.msk.ru; helo=isrv.corpit.ru X-Spam_score_int: -68 X-Spam_score: -6.9 X-Spam_bar: ------ X-Spam_report: (-6.9 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org From: Richard Henderson Because there are more call clobbered registers than call saved registers, we begin with all registers as call clobbered and then reset those that are saved. This was missed when we introduced the LSX support. Cc: qemu-stable@nongnu.org Fixes: 16288ded944 ("tcg/loongarch64: Lower basic tcg vec ops to LSX") Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2136 Signed-off-by: Richard Henderson Reviewed-by: Song Gao Message-Id: <20240201233414.500588-1-richard.henderson@linaro.org> (cherry picked from commit 45bf0e7aa648369cf8ab2333bd20144806fc1be3) Signed-off-by: Michael Tokarev diff --git a/tcg/loongarch64/tcg-target.c.inc b/tcg/loongarch64/tcg-target.c.inc index bab0a173a3..dcf0205458 100644 --- a/tcg/loongarch64/tcg-target.c.inc +++ b/tcg/loongarch64/tcg-target.c.inc @@ -2327,7 +2327,7 @@ static void tcg_target_init(TCGContext *s) tcg_target_available_regs[TCG_TYPE_I32] = ALL_GENERAL_REGS; tcg_target_available_regs[TCG_TYPE_I64] = ALL_GENERAL_REGS; - tcg_target_call_clobber_regs = ALL_GENERAL_REGS; + tcg_target_call_clobber_regs = ALL_GENERAL_REGS | ALL_VECTOR_REGS; tcg_regset_reset_reg(tcg_target_call_clobber_regs, TCG_REG_S0); tcg_regset_reset_reg(tcg_target_call_clobber_regs, TCG_REG_S1); tcg_regset_reset_reg(tcg_target_call_clobber_regs, TCG_REG_S2);