From patchwork Wed Mar 23 13:57:12 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: David Miller X-Patchwork-Id: 553749 Delivered-To: patch@linaro.org Received: by 2002:a05:7000:1248:0:0:0:0 with SMTP id z8csp3429027mag; Wed, 23 Mar 2022 06:58:54 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxaL6Jr2JnxGoFk8dBkjTS3EMnqUTnCX3tB5BzZqosnWKvz2Z0cFTLVWGEsELRuByaJ2apx X-Received: by 2002:a05:622a:c:b0:2e1:c5fc:c8d9 with SMTP id x12-20020a05622a000c00b002e1c5fcc8d9mr24254870qtw.587.1648043934722; Wed, 23 Mar 2022 06:58:54 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1648043934; cv=none; d=google.com; s=arc-20160816; b=RVFGtKrYwmVPq8y5YNguoXcTj6MxIx3yHeChy34YnLPXpx518YiB3hZtgJ2obXW2aM WHDIIKoQpiTcaQwf7sLMkeerixe4SjHHT+gFWCB+ooY5KGg3wEHa5h/ShpdMTJHggPwx 71SDghy7OIb/PSPJVUGyztuKfMAJYbNFFWfp6/v+VXhvfUFWEy3VZuKCWaYSjHIq53ae uyljjEDmU4upEcNq6hWLP/tUKMuvs9P3lPtcBE12qhyZlE2Y6/DN4ZU6Wr0AUeAbpurU 1edbIzmH2nnsvcN76CCTOdOvIQtlU3RKHcxBZ2Ywp64j0T7J274yEr93nINK48rD/46X PrGA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc: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:to:from :dkim-signature; bh=YI3G43DEooYXj0cStPID1IbX8K+nJHWH4oT4vvHDMRc=; b=oJhF9GfbmIQQRWBfLCwEIdtGzDdz7Vpr1MQfzROHp+uSlEatF9XWCuls+0cmoR80uw vfJuHUuEWWR9UFEEXx4d9PV9og3HwP99mtgIckw3eWDudKukY8VdfuvI84pdE++ql/Yv ETjL1cnUWdpgY0k9glfiwsv209b4EcVcyQh3YlJDYLiVVgK2Ak9h0IpZHqeD5ordI/i2 w3Vplls12Uh1xDF8f9pDKXCAP4g0Fu4DxoFnzrAbTX4q1UTG3iY9+rw226XV9KHCboU8 JRtpd8HpVqxZdTdxneSJka8f72t9yAlUrk+Ls7p91S2TfpU95rVGjtebKBMoQs5Pfu4/ /5tw== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.s=20210112 header.b="Kk/R/1IZ"; 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"; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id t6-20020a0cd406000000b004415fdfddcfsi502766qvh.534.2022.03.23.06.58.54 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Wed, 23 Mar 2022 06:58:54 -0700 (PDT) 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; dkim=fail header.i=@gmail.com header.s=20210112 header.b="Kk/R/1IZ"; 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"; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from localhost ([::1]:46052 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nX1Vm-0007jJ-8N for patch@linaro.org; Wed, 23 Mar 2022 09:58:54 -0400 Received: from eggs.gnu.org ([209.51.188.92]:54548) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nX1Ud-0007Gg-42; Wed, 23 Mar 2022 09:57:43 -0400 Received: from [2607:f8b0:4864:20::735] (port=33287 helo=mail-qk1-x735.google.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nX1Ub-0000up-EY; Wed, 23 Mar 2022 09:57:42 -0400 Received: by mail-qk1-x735.google.com with SMTP id k125so1090847qkf.0; Wed, 23 Mar 2022 06:57:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=YI3G43DEooYXj0cStPID1IbX8K+nJHWH4oT4vvHDMRc=; b=Kk/R/1IZUIHM/Lhlkii9qnxoqI3ZDL78J4TAjKJXRGQdarRJI6/Ig2CbH4ge7MSvDg pA8YTzeFriKhZCocqV3gEesX9yC1xz4jOnQJ4p1O4OYwXHQdS6Uo0zkUGt7cJNLLTXnt 9MD6KJt6OkXTiibbBGhRQfhnEjavxnaMQqEKf1EVsy5iHzUOhuvAIpLDqSmOYDCw7ROt iSI1W5gbA8lq6vhUjd/Ih2SGm1vxqfHzOw0zMDB6irnkPwoBjkdQVLdK8nDakxe3iCzz XU8oiqUEMNWvffJbhRDDV8KY0oMLoKoRTl2D6jZkUN7md271U+tb9oLxMv0KhxsnrZ6K DEHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=YI3G43DEooYXj0cStPID1IbX8K+nJHWH4oT4vvHDMRc=; b=DCJybd3UoCdzBbXRrgXSr24OYLvgxxK2fHvMr+U0t7LccBfAE4Q13YCTFZ9N0TaBNK 5hl6bDz3Qfrrc5pU8cTjGRzrCdQWPPZBlK9yu8tcH0TWvCPK9bSw1nxdoZFoCOtDgtQ+ 5Hc34qaX8pgk9hXbone/l5dt+MWB0CMtkdtGIcm1dFlY4pJWeC9YByqKLZot2JWoffrX MatwFNX+eQ5A3TVEkOg716O+xpziRy/JnNE7TlL02u2TeaOtvRGjjinmeBO1EyUjpLM3 5R4mQ1jKr3cDZXXUY3g14Pat9WhDsHzNT3oFLjo4uBo0q5h6MDUfz5Zjzo50qQ6g6VMT rgSg== X-Gm-Message-State: AOAM532oaMjgDEXZ+ZxizgFjVv9HQuCAwqSxo43rxkRh8FS2cGZ8GOhg YI3rUM4nH4eGALpVYsFEns06nz+2Zxo63Q== X-Received: by 2002:a05:620a:29d0:b0:680:9c1a:557a with SMTP id s16-20020a05620a29d000b006809c1a557amr197936qkp.646.1648043860105; Wed, 23 Mar 2022 06:57:40 -0700 (PDT) Received: from localhost.localdomain (mont-dyn-146-104.pwrtc.com. [205.174.146.104]) by smtp.gmail.com with ESMTPSA id t128-20020a37aa86000000b0060ddf2dc3ecsm20907qke.104.2022.03.23.06.57.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 23 Mar 2022 06:57:39 -0700 (PDT) From: David Miller To: qemu-s390x@nongnu.org, qemu-devel@nongnu.org Subject: [PATCH v5 01/11] tcg: Implement tcg_gen_{h,w}swap_{i32,i64} Date: Wed, 23 Mar 2022 09:57:12 -0400 Message-Id: <20220323135722.1623-2-dmiller423@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220323135722.1623-1-dmiller423@gmail.com> References: <20220323135722.1623-1-dmiller423@gmail.com> MIME-Version: 1.0 X-Host-Lookup-Failed: Reverse DNS lookup failed for 2607:f8b0:4864:20::735 (failed) Received-SPF: pass client-ip=2607:f8b0:4864:20::735; envelope-from=dmiller423@gmail.com; helo=mail-qk1-x735.google.com X-Spam_score_int: -3 X-Spam_score: -0.4 X-Spam_bar: / X-Spam_report: (-0.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, PDS_HP_HELO_NORDNS=0.659, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no 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: , Cc: thuth@redhat.com, david@redhat.com, cohuck@redhat.com, richard.henderson@linaro.org, farman@linux.ibm.com, David Miller , pasic@linux.ibm.com, borntraeger@linux.ibm.com Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" From: Richard Henderson Swap half-words (16-bit) and words (32-bit) within a larger value. Mirrors functions of the same names within include/qemu/bitops.h. Signed-off-by: Richard Henderson Reviewed-by: David Miller Reviewed-by: David Hildenbrand --- include/tcg/tcg-op.h | 6 ++++++ tcg/tcg-op.c | 30 ++++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+) diff --git a/include/tcg/tcg-op.h b/include/tcg/tcg-op.h index caa0a63612..b09b8b4a05 100644 --- a/include/tcg/tcg-op.h +++ b/include/tcg/tcg-op.h @@ -332,6 +332,7 @@ void tcg_gen_ext8u_i32(TCGv_i32 ret, TCGv_i32 arg); void tcg_gen_ext16u_i32(TCGv_i32 ret, TCGv_i32 arg); void tcg_gen_bswap16_i32(TCGv_i32 ret, TCGv_i32 arg, int flags); void tcg_gen_bswap32_i32(TCGv_i32 ret, TCGv_i32 arg); +void tcg_gen_hswap_i32(TCGv_i32 ret, TCGv_i32 arg); void tcg_gen_smin_i32(TCGv_i32, TCGv_i32 arg1, TCGv_i32 arg2); void tcg_gen_smax_i32(TCGv_i32, TCGv_i32 arg1, TCGv_i32 arg2); void tcg_gen_umin_i32(TCGv_i32, TCGv_i32 arg1, TCGv_i32 arg2); @@ -531,6 +532,8 @@ void tcg_gen_ext32u_i64(TCGv_i64 ret, TCGv_i64 arg); void tcg_gen_bswap16_i64(TCGv_i64 ret, TCGv_i64 arg, int flags); void tcg_gen_bswap32_i64(TCGv_i64 ret, TCGv_i64 arg, int flags); void tcg_gen_bswap64_i64(TCGv_i64 ret, TCGv_i64 arg); +void tcg_gen_hswap_i64(TCGv_i64 ret, TCGv_i64 arg); +void tcg_gen_wswap_i64(TCGv_i64 ret, TCGv_i64 arg); void tcg_gen_smin_i64(TCGv_i64, TCGv_i64 arg1, TCGv_i64 arg2); void tcg_gen_smax_i64(TCGv_i64, TCGv_i64 arg1, TCGv_i64 arg2); void tcg_gen_umin_i64(TCGv_i64, TCGv_i64 arg1, TCGv_i64 arg2); @@ -1077,6 +1080,8 @@ void tcg_gen_stl_vec(TCGv_vec r, TCGv_ptr base, TCGArg offset, TCGType t); #define tcg_gen_bswap32_tl tcg_gen_bswap32_i64 #define tcg_gen_bswap64_tl tcg_gen_bswap64_i64 #define tcg_gen_bswap_tl tcg_gen_bswap64_i64 +#define tcg_gen_hswap_tl tcg_gen_hswap_i64 +#define tcg_gen_wswap_tl tcg_gen_wswap_i64 #define tcg_gen_concat_tl_i64 tcg_gen_concat32_i64 #define tcg_gen_extr_i64_tl tcg_gen_extr32_i64 #define tcg_gen_andc_tl tcg_gen_andc_i64 @@ -1192,6 +1197,7 @@ void tcg_gen_stl_vec(TCGv_vec r, TCGv_ptr base, TCGArg offset, TCGType t); #define tcg_gen_bswap16_tl tcg_gen_bswap16_i32 #define tcg_gen_bswap32_tl(D, S, F) tcg_gen_bswap32_i32(D, S) #define tcg_gen_bswap_tl tcg_gen_bswap32_i32 +#define tcg_gen_hswap_tl tcg_gen_hswap_i32 #define tcg_gen_concat_tl_i64 tcg_gen_concat_i32_i64 #define tcg_gen_extr_i64_tl tcg_gen_extr_i64_i32 #define tcg_gen_andc_tl tcg_gen_andc_i32 diff --git a/tcg/tcg-op.c b/tcg/tcg-op.c index 65e1c94c2d..ae336ff6c2 100644 --- a/tcg/tcg-op.c +++ b/tcg/tcg-op.c @@ -1056,6 +1056,12 @@ void tcg_gen_bswap32_i32(TCGv_i32 ret, TCGv_i32 arg) } } +void tcg_gen_hswap_i32(TCGv_i32 ret, TCGv_i32 arg) +{ + /* Swapping 2 16-bit elements is a rotate. */ + tcg_gen_rotli_i32(ret, arg, 16); +} + void tcg_gen_smin_i32(TCGv_i32 ret, TCGv_i32 a, TCGv_i32 b) { tcg_gen_movcond_i32(TCG_COND_LT, ret, a, b, a, b); @@ -1792,6 +1798,30 @@ void tcg_gen_bswap64_i64(TCGv_i64 ret, TCGv_i64 arg) } } +void tcg_gen_hswap_i64(TCGv_i64 ret, TCGv_i64 arg) +{ + uint64_t m = 0x0000ffff0000ffffull; + TCGv_i64 t0 = tcg_temp_new_i64(); + TCGv_i64 t1 = tcg_temp_new_i64(); + + /* See include/qemu/bitops.h, hswap64. */ + tcg_gen_rotli_i64(t1, arg, 32); + tcg_gen_andi_i64(t0, t1, m); + tcg_gen_shli_i64(t0, t0, 16); + tcg_gen_shri_i64(t1, t1, 16); + tcg_gen_andi_i64(t1, t1, m); + tcg_gen_or_i64(ret, t0, t1); + + tcg_temp_free_i64(t0); + tcg_temp_free_i64(t1); +} + +void tcg_gen_wswap_i64(TCGv_i64 ret, TCGv_i64 arg) +{ + /* Swapping 2 32-bit elements is a rotate. */ + tcg_gen_rotli_i64(ret, arg, 32); +} + void tcg_gen_not_i64(TCGv_i64 ret, TCGv_i64 arg) { if (TCG_TARGET_REG_BITS == 32) { From patchwork Wed Mar 23 13:57:22 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: David Miller X-Patchwork-Id: 553750 Delivered-To: patch@linaro.org Received: by 2002:a05:7000:1248:0:0:0:0 with SMTP id z8csp3438624mag; Wed, 23 Mar 2022 07:07:38 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwumQlo/Bcy8n2hQ5sdlxMw3x7bQATfqy28C+QDww32dXr25LiMumHC8DJD8vCMYSFV7/S1 X-Received: by 2002:ae9:f444:0:b0:67e:7985:8331 with SMTP id z4-20020ae9f444000000b0067e79858331mr10942414qkl.465.1648044458545; Wed, 23 Mar 2022 07:07:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1648044458; cv=none; d=google.com; s=arc-20160816; b=yvQfuqR+UD1SA50nYSdK2z9jQv3zz03ZPsRi8uS0OGMJGe9UcWs6QYtuZMqBe9bcZ7 GEDL81swjoYnK1TLXvo7i5zvzklBJBg7qiAgEDLY1TXzw5Hvrei/iC5LyJz497zNgdPd 9Q2EB9D4X70ZIVnKmKUZlxAq+sntv4BOEjDqRBz2GF5mIkUdTP5GT8qk1Cf56RAdjMZZ 3Ivsgorz4O6BKKVLuBZSa9Ab96xCrW6vTNQXFtIv20MAZqW01QIVOqg1pTawL2rmxmAv Epjx5mMU3FLYzqrrPoDSYSnr4l88Cn5wKjyjZ7UL66kzP2QuvrFlwH3Dvh5EfneTeCGQ D61A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc: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:to:from :dkim-signature; bh=iNm+hwBhGRcLm3jQ823b0u3fdJrto6XL/cXPhWRdun0=; b=GvTk7FK4fmj3V6eYj3qEB950g6btOZPD2+2JclOGjVofATXlXxhTIPAk+vo9EGCfaw L+Ktep7nh4ZXO9Hu8RcFGAzVPrad9eKej2opZgJv7EsfyCg9icMjl5tUNMStfeMYhFGA nJlzhzqkPOIAc+RbjPW9zW9suckvwimBHL70xtfNaeTtG3u5lRLWNDgNb3829dE8DzHr c2S9sl0/tJNzAZB7euVue5TcCxSc0oRJYlXN42Bmar1F1fCfYmngzmF8Gzyr/972IV3h zMwckfnXK837+H4cP3wNLW5/zSf18jFTf88tQENVDzfla7GByQigfiEcwKiObyyqk/zv kqtg== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.s=20210112 header.b=Py2UGO0o; 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"; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id x15-20020a056214014f00b00440e46a7cedsi3896091qvs.395.2022.03.23.07.07.38 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Wed, 23 Mar 2022 07:07:38 -0700 (PDT) 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; dkim=fail header.i=@gmail.com header.s=20210112 header.b=Py2UGO0o; 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"; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from localhost ([::1]:39390 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nX1eE-00067G-0l for patch@linaro.org; Wed, 23 Mar 2022 10:07:38 -0400 Received: from eggs.gnu.org ([209.51.188.92]:54752) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nX1Uo-0007XT-FR; Wed, 23 Mar 2022 09:57:56 -0400 Received: from [2607:f8b0:4864:20::829] (port=41947 helo=mail-qt1-x829.google.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nX1Um-0000xq-LF; Wed, 23 Mar 2022 09:57:53 -0400 Received: by mail-qt1-x829.google.com with SMTP id d15so1160406qty.8; Wed, 23 Mar 2022 06:57:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=iNm+hwBhGRcLm3jQ823b0u3fdJrto6XL/cXPhWRdun0=; b=Py2UGO0oqsFR7ARUKpK4gnJiLs1jkOXuWLXFbdIKqOcXcbvAxwLyvJd5eqg6Pj1B+b V0bQtQJce0t+OnIRGvJhAoFSEK90aP/cSIGF3dr1bW1Z7UeqKXwIdbZoYdF07w9HyiTW 5Gfkgbx0R/OCel0vYwS6z4YSyxP1KTD9IBVnvNSO+iKTyBhrdanx+hW82R3KsPcYlwQO 7/6qMjm102Qa9PkeLtnVKmehkvzi1m9NVZkCNAcQnVgQCw3HhAEeRN/NO4Q9C21LzeXC W5vyr1k+VOBuKfgMthov3S4Y1OPGZ+NChEA42KVc08oBYEAPdzI2XvlXabIM2yW/RIrW gCKQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=iNm+hwBhGRcLm3jQ823b0u3fdJrto6XL/cXPhWRdun0=; b=yys2nhyk9BnmHTThI68OA+r+F90l+pYm+0BYZsZ+sFf4Y4k4vgviZK6jFktfR5NNFX d7LoTi45Qu3lCZCX7XTYlhmzilYUgu3dsoe8hpD4/6H/OeBhbr2nRJs4+4fWaHTDSYBc y5IYC5w4r+P8f3aPq0iIHrP4gqiSdyRIENLvNcc/VSTMRdY69TQIDvvFwc8JC9hdq/FO lXroUzzHgpx55we/DDR7K8TE/1e2AHGctBkupSlJDTKNcC3yRxFB67bbJvoDlQYMO/ZK 9ANcdIpIUeK0Z0v5Q/mo0hDMRg7irAYD+MlGmIbCnnKtzLqKvVMCFtK3rjBBvTDLD9GH h57A== X-Gm-Message-State: AOAM532oLxAd/2hpb90MrQlgYzWnrAL0pi8326NFqR1IBSGcau4HaBFx AIbpZqr59ZTh/CUcYwCgl2cmb9oASf1DYA== X-Received: by 2002:ac8:5a0c:0:b0:2e1:e781:cbf7 with SMTP id n12-20020ac85a0c000000b002e1e781cbf7mr24273637qta.503.1648043870407; Wed, 23 Mar 2022 06:57:50 -0700 (PDT) Received: from localhost.localdomain (mont-dyn-146-104.pwrtc.com. [205.174.146.104]) by smtp.gmail.com with ESMTPSA id t128-20020a37aa86000000b0060ddf2dc3ecsm20907qke.104.2022.03.23.06.57.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 23 Mar 2022 06:57:50 -0700 (PDT) From: David Miller To: qemu-s390x@nongnu.org, qemu-devel@nongnu.org Subject: [PATCH v5 11/11] target/s390x: Fix writeback to v1 in helper_vstl Date: Wed, 23 Mar 2022 09:57:22 -0400 Message-Id: <20220323135722.1623-12-dmiller423@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220323135722.1623-1-dmiller423@gmail.com> References: <20220323135722.1623-1-dmiller423@gmail.com> MIME-Version: 1.0 X-Host-Lookup-Failed: Reverse DNS lookup failed for 2607:f8b0:4864:20::829 (failed) Received-SPF: pass client-ip=2607:f8b0:4864:20::829; envelope-from=dmiller423@gmail.com; helo=mail-qt1-x829.google.com X-Spam_score_int: -3 X-Spam_score: -0.4 X-Spam_bar: / X-Spam_report: (-0.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, PDS_HP_HELO_NORDNS=0.659, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no 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: , Cc: thuth@redhat.com, david@redhat.com, cohuck@redhat.com, richard.henderson@linaro.org, farman@linux.ibm.com, David Miller , pasic@linux.ibm.com, borntraeger@linux.ibm.com Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" From: Richard Henderson Fixes: 0e0a5b49ad58 ("s390x/tcg: Implement VECTOR STORE WITH LENGTH") Signed-off-by: Richard Henderson Reviewed-by: David Miller Reviewed-by: David Hildenbrand --- target/s390x/tcg/vec_helper.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/target/s390x/tcg/vec_helper.c b/target/s390x/tcg/vec_helper.c index ededf13cf0..48d86722b2 100644 --- a/target/s390x/tcg/vec_helper.c +++ b/target/s390x/tcg/vec_helper.c @@ -200,7 +200,6 @@ void HELPER(vstl)(CPUS390XState *env, const void *v1, uint64_t addr, addr = wrap_address(env, addr + 8); cpu_stq_data_ra(env, addr, s390_vec_read_element64(v1, 1), GETPC()); } else { - S390Vector tmp = {}; int i; for (i = 0; i < bytes; i++) { @@ -209,6 +208,5 @@ void HELPER(vstl)(CPUS390XState *env, const void *v1, uint64_t addr, cpu_stb_data_ra(env, addr, byte, GETPC()); addr = wrap_address(env, addr + 1); } - *(S390Vector *)v1 = tmp; } }