From nobody Mon May 6 01:50:54 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1500353857322311.0190412691413; Mon, 17 Jul 2017 21:57:37 -0700 (PDT) Received: from localhost ([::1]:53936 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dXKZk-0005cO-0I for importer@patchew.org; Tue, 18 Jul 2017 00:57:36 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43128) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dXKY5-0004US-MK for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:55:54 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dXKY5-000495-0t for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:55:53 -0400 Received: from mail-qk0-x243.google.com ([2607:f8b0:400d:c09::243]:34647) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dXKY4-00048r-SQ for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:55:52 -0400 Received: by mail-qk0-x243.google.com with SMTP id q66so1228857qki.1 for ; Mon, 17 Jul 2017 21:55:52 -0700 (PDT) Received: from yoga.offpageads.com ([138.117.48.223]) by smtp.gmail.com with ESMTPSA id a62sm863698qkd.14.2017.07.17.21.55.48 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 17 Jul 2017 21:55:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=beVX69gMAfmwC4LYfmDH64SOgTOidSBa5KaJ1w/Z7eo=; b=dHJFIltzboHRv5VOto9jMmCOecSVESNL7BNJPYqF2SfK94Qq1/j9P1kIyh3D8neSL9 SE6NeCFHoxScDAW/aEX5qxKoYveUXMVo4N5GhGC36i5kEU1Fm/au9Vm0U4fShUEeD5Lt ksVYD/icUdJ2qV3FmGzbnANICEZi6LfKGfDkHh1gucopeyt/AR1qen7Z8Rh0KE39TpE9 6sXc4+J7blVSa7ANNxuFqxc1F5dJf2f0vMJ5nszwds73hGTTQb9GluOMIokDN3REsfCn 539RBLsW366Y3c5M7ZJRCgC/gqirdYji00Pj9gA2TE0gsb8+AAhd2DIWuBnj/O6EkXjw lQ2Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=beVX69gMAfmwC4LYfmDH64SOgTOidSBa5KaJ1w/Z7eo=; b=jPwVVu0tA6HUDGnSKmD8yCjoNsWVkcbDsQgC3hzSOKBc/868R95XRDr+osew3nrwhm AEnIYO3apgxGGDghzn+IAjBjS3ENLlo3tOyFI3e0lEXGpRK6Wr+7o7R+QseUNlxdXUkx b2GXeyFZXzUDW2DrXwy+zmZi5fh/u9UMZmmBg+Ug1qmk6odJnzh3UifV4FgORKBDgcj0 tU7k1W6XYkOPvUNMXq7qp7GkCRzRb+BEetr4puVH6eFzVVPfkI/8xVApg3JqmVi7m24l O52VcTv5CLBW7J+g91EsZWPIJ45jFZTYtwYydWKHM7CaSoP4T7dTO7dDt1ieJFIyt8DH ashQ== X-Gm-Message-State: AIVw111Nf8YJKmZu8qpIChKJZmYpIfN3bpAFfjmhg3c3KS/waeXlaCW0 P6peEpcMWEVpqw== X-Received: by 10.55.17.198 with SMTP id 67mr1183450qkr.42.1500353752258; Mon, 17 Jul 2017 21:55:52 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Richard Henderson Date: Tue, 18 Jul 2017 01:55:31 -0300 Message-Id: <20170718045540.16322-2-f4bug@amsat.org> X-Mailer: git-send-email 2.13.2 In-Reply-To: <20170718045540.16322-1-f4bug@amsat.org> References: <20170718045540.16322-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c09::243 Subject: [Qemu-devel] [PATCH v5 01/10] coccinelle: ignore ASTs pre-parsed cached C files X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Eduardo Habkost , Nikunj A Dadhania , qemu-devel@nongnu.org, Markus Armbruster , Laurent Vivier , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paolo Bonzini , Aurelien Jarno Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 files generated using coccinelle tool: 'spatch --use-cache' Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Eric Blake --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 09c2363acf..cf65316863 100644 --- a/.gitignore +++ b/.gitignore @@ -116,6 +116,8 @@ tags TAGS docker-src.* *~ +*.ast_raw +*.depend_raw trace.h trace.c trace-ust.h --=20 2.13.2 From nobody Mon May 6 01:50:54 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1500354005239623.518166753415; Mon, 17 Jul 2017 22:00:05 -0700 (PDT) Received: from localhost ([::1]:53950 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dXKc7-0008FT-Np for importer@patchew.org; Tue, 18 Jul 2017 01:00:03 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43170) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dXKY9-0004Yz-Vp for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:55:59 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dXKY8-0004BA-T9 for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:55:58 -0400 Received: from mail-qk0-x241.google.com ([2607:f8b0:400d:c09::241]:34650) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dXKY8-0004Ab-OT for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:55:56 -0400 Received: by mail-qk0-x241.google.com with SMTP id q66so1228915qki.1 for ; Mon, 17 Jul 2017 21:55:56 -0700 (PDT) Received: from yoga.offpageads.com ([138.117.48.223]) by smtp.gmail.com with ESMTPSA id a62sm863698qkd.14.2017.07.17.21.55.52 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 17 Jul 2017 21:55:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=LqOJaRSNaJqJxOQPV1CGQlhtulvMvHmCWhcgriZlOTM=; b=rGYbGimXCOspF5CLK9cxlJCDBZDJSk7F6Wka57m5rLnhOYS3FXE4dAIFcOhSlSnaPt ulvyFG0etRUyv0HxPmNpihGcxCqe+PYduYQGzUfL1caeZBlqC+0bPLhWqNAvZGR47nTz ujFRDSajZBGaUkbKySEz5dsWPx8kyhl2Pr42ddSHI54cATz7IpQgOoTHtSPyCwgf64Wk Ldf7gLei+ThfVogjOETWL+m7ZUtBJnCl8mi1M1unthJZhEDa5D6noSGIG7h46PLtKlt+ Pd1F6gVVyEqjM/5van981CLcSfP/FCI7a++PVHO0BP9SGO4oC4MMM3S4UzgItfr97X// Y/PA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=LqOJaRSNaJqJxOQPV1CGQlhtulvMvHmCWhcgriZlOTM=; b=P90Bclm+OOSFfzo/VEkwbknWehtGQbsVK2kJV8/OeVMuDhBJXXhGEKnzwgtOpT5TMo 0HSOQH0znj+KNUClaI0w7OAhsRuJrwuXwms1uU/XJROUfvJLMfNZIj8cohwFc7Cw/hq4 HekvYtjynzoKAh8lh+cYY8LXFFeHXmBacOLVGtUm2ZuUMYBdpmIYdWqvvFI4LKc2bm/j mjVmbmPFZm4LPbkYf8myVb2XyclpzXZ4FUG8XZeDVSrOYf7M4xPhGpM5mPFtC1WTAe1u qWY105NNyJU3lFgTZkplK1hiS9o2QYQw4quKjat6yaQVh8qHGyBxwC75FMy477X4goi9 vgkw== X-Gm-Message-State: AIVw110JjvBn0DPd85nnJH2GNJs+HusKgNgBWxC5QucWOHWX+4yW+401 CfUlGcyki3q75Q== X-Received: by 10.55.169.150 with SMTP id s144mr936289qke.115.1500353756068; Mon, 17 Jul 2017 21:55:56 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Richard Henderson Date: Tue, 18 Jul 2017 01:55:32 -0300 Message-Id: <20170718045540.16322-3-f4bug@amsat.org> X-Mailer: git-send-email 2.13.2 In-Reply-To: <20170718045540.16322-1-f4bug@amsat.org> References: <20170718045540.16322-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c09::241 Subject: [Qemu-devel] [PATCH v5 02/10] coccinelle: add a script to optimize tcg op using tcg_gen_extract() X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Eduardo Habkost , Nikunj A Dadhania , qemu-devel@nongnu.org, Markus Armbruster , Laurent Vivier , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paolo Bonzini , Aurelien Jarno Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 The following thread was helpful while writing this script: https://github.com/coccinelle/coccinelle/issues/86 Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- scripts/coccinelle/tcg_gen_extract.cocci | 107 +++++++++++++++++++++++++++= ++++ 1 file changed, 107 insertions(+) create mode 100644 scripts/coccinelle/tcg_gen_extract.cocci diff --git a/scripts/coccinelle/tcg_gen_extract.cocci b/scripts/coccinelle/= tcg_gen_extract.cocci new file mode 100644 index 0000000000..81e66a35ae --- /dev/null +++ b/scripts/coccinelle/tcg_gen_extract.cocci @@ -0,0 +1,107 @@ +// optimize TCG using extract op +// +// Copyright: (C) 2017 Philippe Mathieu-Daud=C3=A9. GPLv2+. +// Confidence: High +// Options: --macro-file scripts/cocci-macro-file.h +// +// Nikunj A Dadhania optimization: +// http://lists.nongnu.org/archive/html/qemu-devel/2017-02/msg05211.html +// Aurelien Jarno optimization: +// http://lists.nongnu.org/archive/html/qemu-devel/2017-05/msg01466.html +// +// This script can be run either using spatch locally or via a docker imag= e: +// +// $ spatch \ +// --macro-file scripts/cocci-macro-file.h \ +// --sp-file scripts/coccinelle/tcg_gen_extract.cocci \ +// --keep-comments --in-place \ +// --use-gitgrep --dir target +// +// $ docker run --rm -v `pwd`:`pwd` -w `pwd` philmd/coccinelle \ +// --macro-file scripts/cocci-macro-file.h \ +// --sp-file scripts/coccinelle/tcg_gen_extract.cocci \ +// --keep-comments --in-place \ +// --use-gitgrep --dir target + +@initialize:python@ +@@ +import sys +fd =3D sys.stderr +def debug(msg=3D"", trailer=3D"\n"): + fd.write("[DBG] " + msg + trailer) +def low_bits_count(value): + bits_count =3D 0 + while (value & (1 << bits_count)): + bits_count +=3D 1 + return bits_count +def Mn(order): # Mersenne number + return (1 << order) - 1 + +@match@ +identifier ret; +metavariable arg; +constant ofs, msk; +position shr_p, and_p; +@@ +( + tcg_gen_shri_i32@shr_p +| + tcg_gen_shri_i64@shr_p +| + tcg_gen_shri_tl@shr_p +)(ret, arg, ofs); +... WHEN !=3D ret +( + tcg_gen_andi_i32@and_p +| + tcg_gen_andi_i64@and_p +| + tcg_gen_andi_tl@and_p +)(ret, ret, msk); + +@script:python verify_len depends on match@ +ret_s << match.ret; +msk_s << match.msk; +shr_p << match.shr_p; +extract_len; +@@ +is_optimizable =3D False +debug("candidate at %s:%s" % (shr_p[0].file, shr_p[0].line)) +try: # only eval integer, no #define like 'SR_M' (cpp did this, else some = headers are missing). + msk_v =3D long(msk_s.strip("UL"), 0) + msk_b =3D low_bits_count(msk_v) + if msk_b =3D=3D 0: + debug(" value: 0x%x low_bits: %d" % (msk_v, msk_b)) + else: + debug(" value: 0x%x low_bits: %d [Mersenne number: 0x%x]" % (msk_= v, msk_b, Mn(msk_b))) + is_optimizable =3D Mn(msk_b) =3D=3D msk_v # check low_bits + coccinelle.extract_len =3D "%d" % msk_b + debug(" candidate %s optimizable" % ("IS" if is_optimizable else "is = NOT")) +except: + debug(" ERROR (check included headers?)") +cocci.include_match(is_optimizable) +debug() + +@replacement depends on verify_len@ +identifier match.ret; +metavariable match.arg; +constant match.ofs, match.msk; +position match.shr_p, match.and_p; +identifier verify_len.extract_len; +@@ +( +-tcg_gen_shri_i32@shr_p(ret, arg, ofs); ++tcg_gen_extract_i32(ret, arg, ofs, extract_len); +... WHEN !=3D ret +-tcg_gen_andi_i32@and_p(ret, ret, msk); +| +-tcg_gen_shri_i64@shr_p(ret, arg, ofs); ++tcg_gen_extract_i64(ret, arg, ofs, extract_len); +... WHEN !=3D ret +-tcg_gen_andi_i64@and_p(ret, ret, msk); +| +-tcg_gen_shri_tl@shr_p(ret, arg, ofs); ++tcg_gen_extract_tl(ret, arg, ofs, extract_len); +... WHEN !=3D ret +-tcg_gen_andi_tl@and_p(ret, ret, msk); +) --=20 2.13.2 From nobody Mon May 6 01:50:54 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1500353897995704.7013491311623; Mon, 17 Jul 2017 21:58:17 -0700 (PDT) Received: from localhost ([::1]:53939 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dXKaO-0006CV-O5 for importer@patchew.org; Tue, 18 Jul 2017 00:58:16 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43209) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dXKYF-0004dJ-EY for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dXKYC-0004DB-DK for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:03 -0400 Received: from mail-qk0-x243.google.com ([2607:f8b0:400d:c09::243]:33098) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dXKYC-0004Cz-8r; Tue, 18 Jul 2017 00:56:00 -0400 Received: by mail-qk0-x243.google.com with SMTP id u126so310134qka.0; Mon, 17 Jul 2017 21:56:00 -0700 (PDT) Received: from yoga.offpageads.com ([138.117.48.223]) by smtp.gmail.com with ESMTPSA id a62sm863698qkd.14.2017.07.17.21.55.56 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 17 Jul 2017 21:55:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=jADw3En3egwY8rm7+Ysl4mFgnXpGilTku4AAI0IBduk=; b=nf0v9yK5oJP40LltdNJUpmvBR6A++UTp4bm7LJNlYsjUYxYmYiaMZAmvfxtytt0oiN erD+YQ8G//rIEL1EKHJo58mNphw5odC+kXn6g2JsRIQeGbfTMJa3kV0S4aqdK5/sCdfe ytYnS8vgJFzFQbay/jLYcLabVU4ZH11V8y+aJWgrqEsdnFGWeFHz+86uSQueZd6IGdMs 2Ufrn1Z9RQXkw9NdxFtJRqEBcXEusYjbwPBNzyAM6kz4TzoFY5aVDUtpkRYLdF+f8y6G hXgRCo8KSz/LvGQiuHKHFFiAQ3xtm0NsEPvEwuu5eNTnZzMAlQmxBzs/WkTDovFLUXKu uabg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=jADw3En3egwY8rm7+Ysl4mFgnXpGilTku4AAI0IBduk=; b=K30KpPLTm1rGL7VuP4bYP+7YHoByJMvg+vCetigYE3ekMTxOqgBErUEai+pumo2BuG tXkbVXd8wkgkRseWOzWw8iFCtdPY3BrbKFgf2rhx2LGZOu7gC/pOhHP/MK+l/jKCUdj8 VnLMzL/6CzulBu1y7TCYgoDLUV75hDCQv9GVuTn+rWfJTptpdBbpjmUKMuLuz9JLKoUs ff/GWLi0KIPDll8PY/MxediRyWxIYzrbzdc7ubzKppXYIgBxs4xCsPJXDIBv3DZUlSI8 kEir5oMcN4fOnfzXFGJR8J6bGBIlqDikquPQXMANLuGPGaPqAfrdle/9AhCQRDZ9wg10 xyMw== X-Gm-Message-State: AIVw110V8iNXvswWscSGHL1sq6JyO0paSnG14y+Zd5kLCS5zGhZuLPnm Y0bsA0mqZ1vATw== X-Received: by 10.55.19.138 with SMTP id 10mr1017189qkt.34.1500353759742; Mon, 17 Jul 2017 21:55:59 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Richard Henderson , Peter Maydell Date: Tue, 18 Jul 2017 01:55:33 -0300 Message-Id: <20170718045540.16322-4-f4bug@amsat.org> X-Mailer: git-send-email 2.13.2 In-Reply-To: <20170718045540.16322-1-f4bug@amsat.org> References: <20170718045540.16322-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c09::243 Subject: [Qemu-devel] [PATCH v5 03/10] target/arm: optimize aarch64 rev16() using extract op X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Nikunj A Dadhania , qemu-devel@nongnu.org, Laurent Vivier , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-arm@nongnu.org, Paolo Bonzini , Aurelien Jarno Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Aurelien Jarno denoted this function could be implemented more effectively = using the aarch32 rev16() pattern. [http://lists.nongnu.org/archive/html/qemu-devel/2017-05/msg03180.html] Done with the Coccinelle semantic patch from commit 58daf05d07dd (see scripts/coccinelle/tcg_gen_extract.cocci) Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- Richard: maybe you need to update 58daf05d07dd to your commit... target/arm/translate-a64.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/target/arm/translate-a64.c b/target/arm/translate-a64.c index e55547d95d..8ade865481 100644 --- a/target/arm/translate-a64.c +++ b/target/arm/translate-a64.c @@ -4046,14 +4046,12 @@ static void handle_rev16(DisasContext *s, unsigned = int sf, tcg_gen_andi_i64(tcg_tmp, tcg_rn, 0xffff); tcg_gen_bswap16_i64(tcg_rd, tcg_tmp); =20 - tcg_gen_shri_i64(tcg_tmp, tcg_rn, 16); - tcg_gen_andi_i64(tcg_tmp, tcg_tmp, 0xffff); + tcg_gen_extract_i64(tcg_tmp, tcg_rn, 16, 16); tcg_gen_bswap16_i64(tcg_tmp, tcg_tmp); tcg_gen_deposit_i64(tcg_rd, tcg_rd, tcg_tmp, 16, 16); =20 if (sf) { - tcg_gen_shri_i64(tcg_tmp, tcg_rn, 32); - tcg_gen_andi_i64(tcg_tmp, tcg_tmp, 0xffff); + tcg_gen_extract_i64(tcg_tmp, tcg_rn, 32, 16); tcg_gen_bswap16_i64(tcg_tmp, tcg_tmp); tcg_gen_deposit_i64(tcg_rd, tcg_rd, tcg_tmp, 32, 16); =20 --=20 2.13.2 From nobody Mon May 6 01:50:54 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1500353870039920.1061751944411; Mon, 17 Jul 2017 21:57:50 -0700 (PDT) Received: from localhost ([::1]:53938 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dXKZw-0005nV-Ob for importer@patchew.org; Tue, 18 Jul 2017 00:57:48 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43228) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dXKYG-0004eV-Pf for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dXKYF-0004Fv-V0 for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:04 -0400 Received: from mail-qt0-x243.google.com ([2607:f8b0:400d:c0d::243]:33978) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dXKYF-0004Fc-RU for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:03 -0400 Received: by mail-qt0-x243.google.com with SMTP id 19so1215808qty.1 for ; Mon, 17 Jul 2017 21:56:03 -0700 (PDT) Received: from yoga.offpageads.com ([138.117.48.223]) by smtp.gmail.com with ESMTPSA id a62sm863698qkd.14.2017.07.17.21.56.00 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 17 Jul 2017 21:56:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=dJRQQmi3WAMADAGnlRynGn/NpbUqUfRSmtCi9XEUuy8=; b=OptP+BW6XXKbKKIehgdNeKFPlWF4xJnolhmZw1wND+MPFgGLIxnJo/YLS3EYnq7N/a KR/bDP01J9Q++TggqBi7tzw/ZZrONRhZnEh32sfXvsGWUEEp6zCto6VSBig0BWhwICSs 8quy0GJg+C8F6z4z2s5ddKKMZq2VJE34n463vYTixleDGYrSnMHM5Ebz87CLwczMzU7y QiF/7y/ZU7eF85SIsKumZ97/+TSJWmnB6xt6KVvZo+L8pPaKiuenkWaCMzBLBJeOs8pU FFZFEmjKS/ghugb5MpkjY/YpLmvhCoHizsM4C05qLsV5wCXh+3PvOtAZgGH+Vxly4TkX 8Z9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=dJRQQmi3WAMADAGnlRynGn/NpbUqUfRSmtCi9XEUuy8=; b=db2kUmDdcMILcPr+FX0t2znpPO6ouzqSZV4XG49/VVj+GDO92Pr1xzEBwa0SGeEztg btC2Jacj0RYttGW5jXlTG16+B/V+z0mg3qWE1rtr9iV0AYPWr5drDNesXlg8xPyU2Ytz 3x9Kye3RSwvgXD0KCp1HzdtQ3udpvnfiJ40nqYAXXf61p4ZdudzLul47WRKm5w0iyk2a 5q0ddZedKgpEHtCVSFsTuI7VQE7Q6n7OyH5aqQq4zdGW1wBjvyf/6ZBWbxrRkDZbzOO8 sU5bdAT4kf6AIJOrXUjjH9BpgiVbH6tqOL5ECAkYIOqPp9QryIRJxiq2McWSkLpLtIgS 0+4A== X-Gm-Message-State: AIVw112ZlbPfx+Y4rhvegSE6Pub3v+hod100ZPU+C/jm4ozp3dtUUUwZ J/AMXnHFn2C9RA== X-Received: by 10.237.46.231 with SMTP id k94mr1142423qtd.158.1500353763242; Mon, 17 Jul 2017 21:56:03 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Richard Henderson , Laurent Vivier Date: Tue, 18 Jul 2017 01:55:34 -0300 Message-Id: <20170718045540.16322-5-f4bug@amsat.org> X-Mailer: git-send-email 2.13.2 In-Reply-To: <20170718045540.16322-1-f4bug@amsat.org> References: <20170718045540.16322-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c0d::243 Subject: [Qemu-devel] [PATCH v5 04/10] target/m68k: optimize bcd_flags() using extract op X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Nikunj A Dadhania , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-devel@nongnu.org, Paolo Bonzini , Aurelien Jarno Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Done with the Coccinelle semantic patch from commit 58daf05d07dd (see scripts/coccinelle/tcg_gen_extract.cocci) Signed-off-by: Philippe Mathieu-Daud=C3=A9 Acked-by: Laurent Vivier Reviewed-by: Richard Henderson --- Richard: maybe you need to update 58daf05d07dd to your commit... target/m68k/translate.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/target/m68k/translate.c b/target/m68k/translate.c index 3a519b790d..e709e6cde2 100644 --- a/target/m68k/translate.c +++ b/target/m68k/translate.c @@ -1749,8 +1749,7 @@ static void bcd_flags(TCGv val) tcg_gen_andi_i32(QREG_CC_C, val, 0x0ff); tcg_gen_or_i32(QREG_CC_Z, QREG_CC_Z, QREG_CC_C); =20 - tcg_gen_shri_i32(QREG_CC_C, val, 8); - tcg_gen_andi_i32(QREG_CC_C, QREG_CC_C, 1); + tcg_gen_extract_i32(QREG_CC_C, val, 8, 1); =20 tcg_gen_mov_i32(QREG_CC_X, QREG_CC_C); } --=20 2.13.2 From nobody Mon May 6 01:50:54 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1500354080949288.46211340489026; Mon, 17 Jul 2017 22:01:20 -0700 (PDT) Received: from localhost ([::1]:53961 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dXKdL-0000va-MH for importer@patchew.org; Tue, 18 Jul 2017 01:01:19 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43278) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dXKYL-0004iu-0l for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dXKYJ-0004Iw-Sd for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:09 -0400 Received: from mail-qt0-x243.google.com ([2607:f8b0:400d:c0d::243]:33990) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dXKYJ-0004Id-N3; Tue, 18 Jul 2017 00:56:07 -0400 Received: by mail-qt0-x243.google.com with SMTP id 19so1215950qty.1; Mon, 17 Jul 2017 21:56:07 -0700 (PDT) Received: from yoga.offpageads.com ([138.117.48.223]) by smtp.gmail.com with ESMTPSA id a62sm863698qkd.14.2017.07.17.21.56.03 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 17 Jul 2017 21:56:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=MqLhuc5tw8BSOqegwj47/1+JhfIfb3L9IjAT9vp0MVU=; b=EmJHBUZEEfeDYS2MXDlbrDhDpVGzXvCRvew9U5TTadmJ+YjMtPigjD0BhKisQsqE0T mLUIuWBm1j16YHcvnFshWZ2btIPpDkDlqtj3pcH8w7HHeSLIp82od2cA6Gw/mFNBG+/3 c2xGQGHujMFrSa/qCzGlPGX5Hsw2PPKjRPlRHsw8W0m9ejwnPIYu8keT3nfQeBxJ8u3M e2r4SYVSnQoYyFVFKQjFyYUxtZI+G26kdGi4yHlb7C8U6sJK5ebbDLIvSmMzQuP/0AYs OskTd5YYkFXNj6OdwLMu3v/eJWcZ4lc/BPYUaTdMOFm1OYv76a7K3157BMMfZ7rjF5I0 qvDg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=MqLhuc5tw8BSOqegwj47/1+JhfIfb3L9IjAT9vp0MVU=; b=S8ye8O72Uj85nnDozGoM8M3CrKVCdC5iKPboNMeQQEQPCjfsiB8fiQyLOFJ27v9kvF 71exKlAXZGai1/nCRlfICTUxLiyNRIc8mzczcpiturpw25R23g1yva+4LJQrtP57Pk1d S3se5TLC89UxtePOrD3ysP/M2x6uX25RrIhfhUF6ajYzFgidFHXXXpOsOmuG32suGhPF Tv/VriiSLC/zcA6Og9vxEWvWYgNVF8RLWpjL4QmRem60oYX2Y5lpH1TKAf36mZRcs2yz jd4nVu/Jjq+hPoeFRax/YneypTbndMxx7JGtfe9gD7QiyXxhJtIPtl+1UksHVmzuupS5 IxUw== X-Gm-Message-State: AIVw112qSLzLGehZk4uQW9tKffhWDGOkaNByA7yNKOyAhNlC5Ma9JTs/ h+AsXbIGwgr4sA== X-Received: by 10.200.55.208 with SMTP id e16mr1045048qtc.198.1500353767137; Mon, 17 Jul 2017 21:56:07 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Richard Henderson , Alexander Graf , David Gibson Date: Tue, 18 Jul 2017 01:55:35 -0300 Message-Id: <20170718045540.16322-6-f4bug@amsat.org> X-Mailer: git-send-email 2.13.2 In-Reply-To: <20170718045540.16322-1-f4bug@amsat.org> References: <20170718045540.16322-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c0d::243 Subject: [Qemu-devel] [PATCH v5 05/10] target/ppc: optimize various functions using extract op X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Nikunj A Dadhania , qemu-devel@nongnu.org, Laurent Vivier , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-ppc@nongnu.org, Aurelien Jarno Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Done with the Coccinelle semantic patch from commit 58daf05d07dd (see scripts/coccinelle/tcg_gen_extract.cocci) Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson Acked-by: David Gibson --- Richard: maybe you need to update 58daf05d07dd to your commit... target/ppc/translate.c | 21 +++++++-------------- target/ppc/translate/vsx-impl.inc.c | 24 ++++++++---------------- 2 files changed, 15 insertions(+), 30 deletions(-) diff --git a/target/ppc/translate.c b/target/ppc/translate.c index c0cd64d927..de271af52b 100644 --- a/target/ppc/translate.c +++ b/target/ppc/translate.c @@ -873,8 +873,7 @@ static inline void gen_op_arith_add(DisasContext *ctx, = TCGv ret, TCGv arg1, } tcg_gen_xor_tl(cpu_ca, t0, t1); /* bits changed w/ carr= y */ tcg_temp_free(t1); - tcg_gen_shri_tl(cpu_ca, cpu_ca, 32); /* extract bit 32 */ - tcg_gen_andi_tl(cpu_ca, cpu_ca, 1); + tcg_gen_extract_tl(cpu_ca, cpu_ca, 32, 1); if (is_isa300(ctx)) { tcg_gen_mov_tl(cpu_ca32, cpu_ca); } @@ -1404,8 +1403,7 @@ static inline void gen_op_arith_subf(DisasContext *ct= x, TCGv ret, TCGv arg1, tcg_temp_free(inv1); tcg_gen_xor_tl(cpu_ca, t0, t1); /* bits changes w/ car= ry */ tcg_temp_free(t1); - tcg_gen_shri_tl(cpu_ca, cpu_ca, 32); /* extract bit 32 */ - tcg_gen_andi_tl(cpu_ca, cpu_ca, 1); + tcg_gen_extract_tl(cpu_ca, cpu_ca, 32, 1); if (is_isa300(ctx)) { tcg_gen_mov_tl(cpu_ca32, cpu_ca); } @@ -4336,8 +4334,7 @@ static void gen_mfsrin(DisasContext *ctx) =20 CHK_SV; t0 =3D tcg_temp_new(); - tcg_gen_shri_tl(t0, cpu_gpr[rB(ctx->opcode)], 28); - tcg_gen_andi_tl(t0, t0, 0xF); + tcg_gen_extract_tl(t0, cpu_gpr[rB(ctx->opcode)], 28, 4); gen_helper_load_sr(cpu_gpr[rD(ctx->opcode)], cpu_env, t0); tcg_temp_free(t0); #endif /* defined(CONFIG_USER_ONLY) */ @@ -4368,8 +4365,7 @@ static void gen_mtsrin(DisasContext *ctx) CHK_SV; =20 t0 =3D tcg_temp_new(); - tcg_gen_shri_tl(t0, cpu_gpr[rB(ctx->opcode)], 28); - tcg_gen_andi_tl(t0, t0, 0xF); + tcg_gen_extract_tl(t0, cpu_gpr[rB(ctx->opcode)], 28, 4); gen_helper_store_sr(cpu_env, t0, cpu_gpr[rD(ctx->opcode)]); tcg_temp_free(t0); #endif /* defined(CONFIG_USER_ONLY) */ @@ -4403,8 +4399,7 @@ static void gen_mfsrin_64b(DisasContext *ctx) =20 CHK_SV; t0 =3D tcg_temp_new(); - tcg_gen_shri_tl(t0, cpu_gpr[rB(ctx->opcode)], 28); - tcg_gen_andi_tl(t0, t0, 0xF); + tcg_gen_extract_tl(t0, cpu_gpr[rB(ctx->opcode)], 28, 4); gen_helper_load_sr(cpu_gpr[rD(ctx->opcode)], cpu_env, t0); tcg_temp_free(t0); #endif /* defined(CONFIG_USER_ONLY) */ @@ -4435,8 +4430,7 @@ static void gen_mtsrin_64b(DisasContext *ctx) =20 CHK_SV; t0 =3D tcg_temp_new(); - tcg_gen_shri_tl(t0, cpu_gpr[rB(ctx->opcode)], 28); - tcg_gen_andi_tl(t0, t0, 0xF); + tcg_gen_extract_tl(t0, cpu_gpr[rB(ctx->opcode)], 28, 4); gen_helper_store_sr(cpu_env, t0, cpu_gpr[rS(ctx->opcode)]); tcg_temp_free(t0); #endif /* defined(CONFIG_USER_ONLY) */ @@ -5414,8 +5408,7 @@ static void gen_mfsri(DisasContext *ctx) CHK_SV; t0 =3D tcg_temp_new(); gen_addr_reg_index(ctx, t0); - tcg_gen_shri_tl(t0, t0, 28); - tcg_gen_andi_tl(t0, t0, 0xF); + tcg_gen_extract_tl(t0, t0, 28, 4); gen_helper_load_sr(cpu_gpr[rd], cpu_env, t0); tcg_temp_free(t0); if (ra !=3D 0 && ra !=3D rd) diff --git a/target/ppc/translate/vsx-impl.inc.c b/target/ppc/translate/vsx= -impl.inc.c index 7f12908029..85ed135d44 100644 --- a/target/ppc/translate/vsx-impl.inc.c +++ b/target/ppc/translate/vsx-impl.inc.c @@ -1248,8 +1248,7 @@ static void gen_xsxexpdp(DisasContext *ctx) gen_exception(ctx, POWERPC_EXCP_VSXU); return; } - tcg_gen_shri_i64(rt, cpu_vsrh(xB(ctx->opcode)), 52); - tcg_gen_andi_i64(rt, rt, 0x7FF); + tcg_gen_extract_i64(rt, cpu_vsrh(xB(ctx->opcode)), 52, 11); } =20 static void gen_xsxexpqp(DisasContext *ctx) @@ -1262,8 +1261,7 @@ static void gen_xsxexpqp(DisasContext *ctx) gen_exception(ctx, POWERPC_EXCP_VSXU); return; } - tcg_gen_shri_i64(xth, xbh, 48); - tcg_gen_andi_i64(xth, xth, 0x7FFF); + tcg_gen_extract_i64(xth, xbh, 48, 15); tcg_gen_movi_i64(xtl, 0); } =20 @@ -1323,8 +1321,7 @@ static void gen_xsxsigdp(DisasContext *ctx) zr =3D tcg_const_i64(0); nan =3D tcg_const_i64(2047); =20 - tcg_gen_shri_i64(exp, cpu_vsrh(xB(ctx->opcode)), 52); - tcg_gen_andi_i64(exp, exp, 0x7FF); + tcg_gen_extract_i64(exp, cpu_vsrh(xB(ctx->opcode)), 52, 11); tcg_gen_movi_i64(t0, 0x0010000000000000); tcg_gen_movcond_i64(TCG_COND_EQ, t0, exp, zr, zr, t0); tcg_gen_movcond_i64(TCG_COND_EQ, t0, exp, nan, zr, t0); @@ -1352,8 +1349,7 @@ static void gen_xsxsigqp(DisasContext *ctx) zr =3D tcg_const_i64(0); nan =3D tcg_const_i64(32767); =20 - tcg_gen_shri_i64(exp, cpu_vsrh(rB(ctx->opcode) + 32), 48); - tcg_gen_andi_i64(exp, exp, 0x7FFF); + tcg_gen_extract_i64(exp, cpu_vsrh(rB(ctx->opcode) + 32), 48, 15); tcg_gen_movi_i64(t0, 0x0001000000000000); tcg_gen_movcond_i64(TCG_COND_EQ, t0, exp, zr, zr, t0); tcg_gen_movcond_i64(TCG_COND_EQ, t0, exp, nan, zr, t0); @@ -1448,10 +1444,8 @@ static void gen_xvxexpdp(DisasContext *ctx) gen_exception(ctx, POWERPC_EXCP_VSXU); return; } - tcg_gen_shri_i64(xth, xbh, 52); - tcg_gen_andi_i64(xth, xth, 0x7FF); - tcg_gen_shri_i64(xtl, xbl, 52); - tcg_gen_andi_i64(xtl, xtl, 0x7FF); + tcg_gen_extract_i64(xth, xbh, 52, 11); + tcg_gen_extract_i64(xtl, xbl, 52, 11); } =20 GEN_VSX_HELPER_2(xvxsigsp, 0x00, 0x04, 0, PPC2_ISA300) @@ -1474,16 +1468,14 @@ static void gen_xvxsigdp(DisasContext *ctx) zr =3D tcg_const_i64(0); nan =3D tcg_const_i64(2047); =20 - tcg_gen_shri_i64(exp, xbh, 52); - tcg_gen_andi_i64(exp, exp, 0x7FF); + tcg_gen_extract_i64(exp, xbh, 52, 11); tcg_gen_movi_i64(t0, 0x0010000000000000); tcg_gen_movcond_i64(TCG_COND_EQ, t0, exp, zr, zr, t0); tcg_gen_movcond_i64(TCG_COND_EQ, t0, exp, nan, zr, t0); tcg_gen_andi_i64(xth, xbh, 0x000FFFFFFFFFFFFF); tcg_gen_or_i64(xth, xth, t0); =20 - tcg_gen_shri_i64(exp, xbl, 52); - tcg_gen_andi_i64(exp, exp, 0x7FF); + tcg_gen_extract_i64(exp, xbl, 52, 11); tcg_gen_movi_i64(t0, 0x0010000000000000); tcg_gen_movcond_i64(TCG_COND_EQ, t0, exp, zr, zr, t0); tcg_gen_movcond_i64(TCG_COND_EQ, t0, exp, nan, zr, t0); --=20 2.13.2 From nobody Mon May 6 01:50:54 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1500354169999234.19463594108936; Mon, 17 Jul 2017 22:02:49 -0700 (PDT) Received: from localhost ([::1]:53968 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dXKel-0002C7-Le for importer@patchew.org; Tue, 18 Jul 2017 01:02:47 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43317) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dXKYO-0004lz-Fq for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dXKYN-0004Lj-NK for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:12 -0400 Received: from mail-qt0-x241.google.com ([2607:f8b0:400d:c0d::241]:34900) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dXKYN-0004L8-Iq for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:11 -0400 Received: by mail-qt0-x241.google.com with SMTP id p25so116829qtp.2 for ; Mon, 17 Jul 2017 21:56:11 -0700 (PDT) Received: from yoga.offpageads.com ([138.117.48.223]) by smtp.gmail.com with ESMTPSA id a62sm863698qkd.14.2017.07.17.21.56.07 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 17 Jul 2017 21:56:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=cTDUX4yN1TfOejiFTUD69+rnxmhT7mlwQkfyzCjGj+A=; b=Lx8d7+kYWr+ylh6V7uPoUa1dcAAJDz5o5IDNKuJL9BxIeYP4pZKveLDqh0p69Yg1u/ YGQ4cGlsmADCz+ILaeWtAcTsKazsH3WucxiEtO4Tpf8xNYELzRejpwYRTC0BhguZ63ca 2WEzaP526OEQ0l5+7TpnpSF1nyFj4rjkoWgrU/USnqYr8pNngXnuaB4T9d0GpqC6KQNg vv/I4G8igDpgi4LcNCwiyQT2HSjDshqwYUm+l28yYPcad+E9LifDCnfIUFkPhnSORmRk sTCf44CY+aK/nPP6/SImB+MdN4ee+7xAlPzXH08qeumn5B4prEcjtb15JNDpVCZSUB3a p+ig== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=cTDUX4yN1TfOejiFTUD69+rnxmhT7mlwQkfyzCjGj+A=; b=TGGhn2SjjQDStdXXuydQjJkm9SJlVzpBxiiTQFEWD6XuBpwVvf/6vSn0ylrEKU9nOw irDqKZMnDX+fbaZXsnnXYVgDmzY3mJeWAXlB7n9MDW4bjG0V8cshBONuECmcHVzt4LjB vpPIfxSAhW+4kCvDA6ZMbSAU+GdJHN017i94tZFU14x2NOHapRZ0WZ8z3oDj+B47jJLY Nw16G0WCTr1o/QFy2q/0vGhgtjz69WiNPpSwhLUbZyfl/XmtZQ2ift/PlNRq/Tdan8K8 zXEiMx+vQ/0wLtgp7Gj0IDPBWVuP2noALwQa4cq2MnpxY7TQ91FaFc9vOjT/Jf6BfMVb I0Eg== X-Gm-Message-State: AIVw112D3uRU81Rtf1tHxl+L3V1F3eboUtI2U9M4dbIA+dK3y6JwvZfp nB3vJkQ5ecVDdA== X-Received: by 10.237.51.70 with SMTP id u64mr1064377qtd.211.1500353770852; Mon, 17 Jul 2017 21:56:10 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Richard Henderson , Artyom Tarasenko , Michael Tokarev Date: Tue, 18 Jul 2017 01:55:36 -0300 Message-Id: <20170718045540.16322-7-f4bug@amsat.org> X-Mailer: git-send-email 2.13.2 In-Reply-To: <20170718045540.16322-1-f4bug@amsat.org> References: <20170718045540.16322-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c0d::241 Subject: [Qemu-devel] [PATCH v5 06/10] target/sparc: optimize various functions using extract op X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Nikunj A Dadhania , qemu-devel@nongnu.org, Laurent Vivier , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Aurelien Jarno Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Done with the Coccinelle semantic patch from commit 58daf05d07dd (see scripts/coccinelle/tcg_gen_extract.cocci) Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- Richard: maybe you need to update 58daf05d07dd to your commit... target/sparc/translate.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/target/sparc/translate.c b/target/sparc/translate.c index aa6734d54e..962ce08f80 100644 --- a/target/sparc/translate.c +++ b/target/sparc/translate.c @@ -380,29 +380,25 @@ static inline void gen_goto_tb(DisasContext *s, int t= b_num, static inline void gen_mov_reg_N(TCGv reg, TCGv_i32 src) { tcg_gen_extu_i32_tl(reg, src); - tcg_gen_shri_tl(reg, reg, PSR_NEG_SHIFT); - tcg_gen_andi_tl(reg, reg, 0x1); + tcg_gen_extract_tl(reg, reg, PSR_NEG_SHIFT, 1); } =20 static inline void gen_mov_reg_Z(TCGv reg, TCGv_i32 src) { tcg_gen_extu_i32_tl(reg, src); - tcg_gen_shri_tl(reg, reg, PSR_ZERO_SHIFT); - tcg_gen_andi_tl(reg, reg, 0x1); + tcg_gen_extract_tl(reg, reg, PSR_ZERO_SHIFT, 1); } =20 static inline void gen_mov_reg_V(TCGv reg, TCGv_i32 src) { tcg_gen_extu_i32_tl(reg, src); - tcg_gen_shri_tl(reg, reg, PSR_OVF_SHIFT); - tcg_gen_andi_tl(reg, reg, 0x1); + tcg_gen_extract_tl(reg, reg, PSR_OVF_SHIFT, 1); } =20 static inline void gen_mov_reg_C(TCGv reg, TCGv_i32 src) { tcg_gen_extu_i32_tl(reg, src); - tcg_gen_shri_tl(reg, reg, PSR_CARRY_SHIFT); - tcg_gen_andi_tl(reg, reg, 0x1); + tcg_gen_extract_tl(reg, reg, PSR_CARRY_SHIFT, 1); } =20 static inline void gen_op_add_cc(TCGv dst, TCGv src1, TCGv src2) --=20 2.13.2 From nobody Mon May 6 01:50:54 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1500354018953847.2296861078927; Mon, 17 Jul 2017 22:00:18 -0700 (PDT) Received: from localhost ([::1]:53951 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dXKcL-0008Rh-Lp for importer@patchew.org; Tue, 18 Jul 2017 01:00:17 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43360) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dXKYR-0004os-Ox for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:16 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dXKYR-0004OO-2i for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:15 -0400 Received: from mail-qt0-x244.google.com ([2607:f8b0:400d:c0d::244]:33391) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dXKYQ-0004Ny-Ub for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:15 -0400 Received: by mail-qt0-x244.google.com with SMTP id 50so155786qtz.0 for ; Mon, 17 Jul 2017 21:56:14 -0700 (PDT) Received: from yoga.offpageads.com ([138.117.48.223]) by smtp.gmail.com with ESMTPSA id a62sm863698qkd.14.2017.07.17.21.56.11 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 17 Jul 2017 21:56:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=DMsdQeYOHxFdgvPCbMINDTL8XJ5T7pqSgu4NO+egnY0=; b=jgo5mh2DkNUObcGNC6ycVcmMP7taJb/1swSKV3BGEQFqqLnMPjWCdm9ArdTGog+636 983UHgN+236/BofTRb0kG46/yC0946haByeuUJ+teIoqJsju/yjxwtrwBvGFOPcnTV/7 E0/pYBLInyx5rTYEVjuSeg53P7GMNjoOZEeqKW6VAXOXXaamJ/u+YFLY6W42zPQWpyHZ 0uhdiI4DTkK2d1giXQijlxLVSHYQSMFNtEidW87KJOujMUrxjErwiwWkdUP/s90uhAzj qSV+wl29GZ7IZHbocHJSsfZJ1d8UV+a4b4fWGnvx+Vfd8OfewhCggNG6RHcLz2dRI9bd 04lg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=DMsdQeYOHxFdgvPCbMINDTL8XJ5T7pqSgu4NO+egnY0=; b=c7L1btlGRQJepJwCBc54DvlCmJyPgTbea9lqtdkGv39KbG4ex4xpipxY43in24C3SO nQPYLrKeon6+P7Dlaugah+NRxztGmWg4nZLgO+FWgTWx/es96Ze6AQ1r61qxzHy38sis H9Wri5MQUy3gsJb2t1IspMo6miqBjHmP4+FudGMkI1uRWTyu0DY03LBKr6lFHzq/agrt 2YVVsNYSrgqvrivb9q2L4ZfvGgCBNI3bLxww/ZtAib2jcEVPz2zgx/v0RHxd+RAI9xNm LJPvMZH39dHEQPQP6hoxbAAwrAZECmzlBWCwCMayIz3L8fvPkuXnD3Nt+JUi6LgoCDYl LZCw== X-Gm-Message-State: AIVw111zhuJQdgoLeIw4dNofEDCVbv3TXV3fbWG+lrdneeM+MR8vCRo0 6hxKQpc3J0vaIw== X-Received: by 10.237.38.33 with SMTP id z30mr1192658qtc.105.1500353774341; Mon, 17 Jul 2017 21:56:14 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Richard Henderson , Artyom Tarasenko , Michael Tokarev Date: Tue, 18 Jul 2017 01:55:37 -0300 Message-Id: <20170718045540.16322-8-f4bug@amsat.org> X-Mailer: git-send-email 2.13.2 In-Reply-To: <20170718045540.16322-1-f4bug@amsat.org> References: <20170718045540.16322-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c0d::244 Subject: [Qemu-devel] [PATCH v5 07/10] target/sparc: optimize gen_op_mulscc() using extract op X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Nikunj A Dadhania , qemu-devel@nongnu.org, Laurent Vivier , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Aurelien Jarno Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Done with the Coccinelle semantic patch from commit 58daf05d07dd (see scripts/coccinelle/tcg_gen_extract.cocci) Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- Richard: are you ok squashing it with previous commit? maybe you need to update 58daf05d07dd to your commit... target/sparc/translate.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/target/sparc/translate.c b/target/sparc/translate.c index 962ce08f80..67a83b77cc 100644 --- a/target/sparc/translate.c +++ b/target/sparc/translate.c @@ -634,8 +634,7 @@ static inline void gen_op_mulscc(TCGv dst, TCGv src1, T= CGv src2) // env->y =3D (b2 << 31) | (env->y >> 1); tcg_gen_andi_tl(r_temp, cpu_cc_src, 0x1); tcg_gen_shli_tl(r_temp, r_temp, 31); - tcg_gen_shri_tl(t0, cpu_y, 1); - tcg_gen_andi_tl(t0, t0, 0x7fffffff); + tcg_gen_extract_tl(t0, cpu_y, 1, 31); tcg_gen_or_tl(t0, t0, r_temp); tcg_gen_andi_tl(cpu_y, t0, 0xffffffff); =20 --=20 2.13.2 From nobody Mon May 6 01:50:54 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1500354171011599.8820653782138; Mon, 17 Jul 2017 22:02:51 -0700 (PDT) Received: from localhost ([::1]:53969 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dXKen-0002EF-Pf for importer@patchew.org; Tue, 18 Jul 2017 01:02:49 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43397) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dXKYX-0004tV-Rx for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:22 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dXKYU-0004QI-S6 for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:21 -0400 Received: from mail-qk0-x241.google.com ([2607:f8b0:400d:c09::241]:33108) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dXKYU-0004Q7-NS for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:18 -0400 Received: by mail-qk0-x241.google.com with SMTP id u126so310505qka.0 for ; Mon, 17 Jul 2017 21:56:18 -0700 (PDT) Received: from yoga.offpageads.com ([138.117.48.223]) by smtp.gmail.com with ESMTPSA id a62sm863698qkd.14.2017.07.17.21.56.14 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 17 Jul 2017 21:56:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=4JTNaFfRl4h2g2ukMvNVphMnRJIVW+nkZNyVCjZH824=; b=bfwjVFruSvN6CVzzd2icDAb4e+lqnVq+wCb3v6FtCfOl0a4sl4T/TrY4qJfQ4L+c3G FhRg9NK7+xy9bPNIx58d16VyuUHu+pnpWIT59ZSJKiE4l9wa6dlAb8jw4q0LMS/7f1mT nHKtn2kku3Pj1REPRUaGaeiD9d04d9d+kL/RkU+YqOGsbGUq9AADaqmrjVikrR4CGrnh DeG4mCqt1HrSTIME1OSApy76NWVgw/aGCQi9DLg6UBAEyHN1DnJ4/Hvon5nx5olcMVXf cfdFd3wUwlx5FWInUqn4oZMWtqYjA/ZyE7uvWHd6a2m0n2baGxbSI8xskm7Oagp8pTxs 905g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=4JTNaFfRl4h2g2ukMvNVphMnRJIVW+nkZNyVCjZH824=; b=OyCxxIYETdVjpiu1162BtaQBIPjkp183H4UO88UMPpJNyav+MQL/7S8ycow/AtlQI5 Byq1kS32bYa0sX7tWZhaixu0VotsGEAJ9EIneACgUUJBobSviOep5boBRKabMLIgwEY0 jGTG1HFbd29hwmAMYmSYBDhg+Fu0+yz4OI4GMkCvL+aUQz6n+LLVrwzQrkpr8SXgZTMX YKcFpJbuR1QnFVxz/sDqod6TsVuZbY1kRVUFrEeSKEWjpcBdA5LD7ly1FcLZf1vC5/IX X8wdiLGjZLflRqNQnqtKwkH86NJxe0gvtvUcklpAhYcHKeBoAytHSMFzz4SPpnZ7OB6h 6nCw== X-Gm-Message-State: AIVw1104Jp0Je+jCCaFcWyScWJ52ZSK3dCFAWKf9DjPUNUhwCS7YqMs1 NZY626zpEFBVzg== X-Received: by 10.55.166.207 with SMTP id p198mr1048380qke.132.1500353778180; Mon, 17 Jul 2017 21:56:18 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Richard Henderson , Artyom Tarasenko , Michael Tokarev Date: Tue, 18 Jul 2017 01:55:38 -0300 Message-Id: <20170718045540.16322-9-f4bug@amsat.org> X-Mailer: git-send-email 2.13.2 In-Reply-To: <20170718045540.16322-1-f4bug@amsat.org> References: <20170718045540.16322-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c09::241 Subject: [Qemu-devel] [PATCH v5 08/10] target/sparc: optimize gen_op_mulscc() using deposit op X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Nikunj A Dadhania , qemu-devel@nongnu.org, Laurent Vivier , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Aurelien Jarno Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Suggested-by: Richard Henderson Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- target/sparc/translate.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/target/sparc/translate.c b/target/sparc/translate.c index 67a83b77cc..a425efb1f1 100644 --- a/target/sparc/translate.c +++ b/target/sparc/translate.c @@ -632,11 +632,8 @@ static inline void gen_op_mulscc(TCGv dst, TCGv src1, = TCGv src2) =20 // b2 =3D T0 & 1; // env->y =3D (b2 << 31) | (env->y >> 1); - tcg_gen_andi_tl(r_temp, cpu_cc_src, 0x1); - tcg_gen_shli_tl(r_temp, r_temp, 31); tcg_gen_extract_tl(t0, cpu_y, 1, 31); - tcg_gen_or_tl(t0, t0, r_temp); - tcg_gen_andi_tl(cpu_y, t0, 0xffffffff); + tcg_gen_deposit_tl(cpu_y, cpu_y, cpu_cc_src, 31, 1); =20 // b1 =3D N ^ V; gen_mov_reg_N(t0, cpu_psr); --=20 2.13.2 From nobody Mon May 6 01:50:54 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 150035410977743.62328646642891; Mon, 17 Jul 2017 22:01:49 -0700 (PDT) Received: from localhost ([::1]:53966 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dXKdo-0001M2-C5 for importer@patchew.org; Tue, 18 Jul 2017 01:01:48 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43407) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dXKYY-0004tj-DG for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:23 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dXKYX-0004S4-Pc for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:22 -0400 Received: from mail-qt0-x242.google.com ([2607:f8b0:400d:c0d::242]:34912) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dXKYX-0004Rq-Kv for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:21 -0400 Received: by mail-qt0-x242.google.com with SMTP id p25so117199qtp.2 for ; Mon, 17 Jul 2017 21:56:21 -0700 (PDT) Received: from yoga.offpageads.com ([138.117.48.223]) by smtp.gmail.com with ESMTPSA id a62sm863698qkd.14.2017.07.17.21.56.18 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 17 Jul 2017 21:56:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=tIOZ8PmeYRyxFb8mJm3rk5STWQphBIDADGn2l24uPak=; b=mbMJG8qpauhp0LOkkATE6M93/Ady5+4seQIp7eUppXq3/GzDgRM2zAS4bMViNZuB7z YtA8z/dEhtsxl9Pgzbmqyck7nM2OT/VCJt08Qyu07WRYr1DR1jOmxdSMeFYFqRoRPF14 mXuw17cXZjFzpKM6qYJAIJVZPkxh1W6ZVPPXMHnaVxuHI7f2HTMYVeoyqZGaOlkvZRvM nrqseys4YVB+ZR8HFbcfinHIZOSWcPY1a0Re4aN8zfogJ2uDCppG0MPsa9+5BhHPkSmf EGoAv83sJlmVdITfcfrwTikVLmUUK6/jlTWPUU43YhObYyCNTpqYIgW8CxLFySQBwCsW TPNA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=tIOZ8PmeYRyxFb8mJm3rk5STWQphBIDADGn2l24uPak=; b=DwJfS1kEMe0eCV0PN9OpAu2uWmvI2/1CkWQw4tj1UYM/sn+ZVUDZDPQnWnYT8f3zvf /WWSWP3hUR91CRQB2PCHVyu4oVJIzdJlzQHGPJPXieSuYcct4kb5xvQg0zW3ly04/VF9 OnC8Z4VanZHdgx4ijfMfT8GSm49JFwvRkDcs5T/wPQrQ76/w9g/Z3RLB9auObBwrCbQQ VzsWBySNdQmNU6S1XsyvXDiXjz++5SBqiW5FOaIgIjNRggrSfqVlPhhA/Nw/4UwCr47T O9HYqPq4LOgAeSEk75P3DyvV2c+2YPOvDDNChJ8L/+vexIREbJbTcqIkWGgCcDZcfaob EIzQ== X-Gm-Message-State: AIVw1111T49FUAeWyhMvZqNWeSSdQpQn93Ij/lgjCMpOgcE2RaqmjUOb r+e1EtOccUAI8w== X-Received: by 10.237.56.40 with SMTP id j37mr1051030qte.45.1500353781053; Mon, 17 Jul 2017 21:56:21 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Richard Henderson Date: Tue, 18 Jul 2017 01:55:39 -0300 Message-Id: <20170718045540.16322-10-f4bug@amsat.org> X-Mailer: git-send-email 2.13.2 In-Reply-To: <20170718045540.16322-1-f4bug@amsat.org> References: <20170718045540.16322-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c0d::242 Subject: [Qemu-devel] [PATCH v5 09/10] target/alpha: optimize gen_cvtlq() using deposit op X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Laurent Vivier , Nikunj A Dadhania , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Aurelien Jarno , qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Suggested-by: Richard Henderson Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- target/alpha/translate.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/target/alpha/translate.c b/target/alpha/translate.c index 232af9e177..2bffbae92f 100644 --- a/target/alpha/translate.c +++ b/target/alpha/translate.c @@ -756,11 +756,9 @@ static void gen_cvtlq(TCGv vc, TCGv vb) =20 /* The arithmetic right shift here, plus the sign-extended mask below yields a sign-extended result without an explicit ext32s_i64. */ - tcg_gen_sari_i64(tmp, vb, 32); - tcg_gen_shri_i64(vc, vb, 29); - tcg_gen_andi_i64(tmp, tmp, (int32_t)0xc0000000); - tcg_gen_andi_i64(vc, vc, 0x3fffffff); - tcg_gen_or_i64(vc, vc, tmp); + tcg_gen_shri_i64(tmp, vb, 29); + tcg_gen_sari_i64(vc, vb, 32); + tcg_gen_deposit_i64(vc, vc, tmp, 0, 30); =20 tcg_temp_free(tmp); } --=20 2.13.2 From nobody Mon May 6 01:50:54 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1500354293888640.4780755315777; Mon, 17 Jul 2017 22:04:53 -0700 (PDT) Received: from localhost ([::1]:53980 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dXKgl-0004BX-PU for importer@patchew.org; Tue, 18 Jul 2017 01:04:51 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43429) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dXKYc-0004xW-7M for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:27 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dXKYb-0004V1-Be for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:26 -0400 Received: from mail-qt0-x241.google.com ([2607:f8b0:400d:c0d::241]:33402) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dXKYb-0004Ud-7H for qemu-devel@nongnu.org; Tue, 18 Jul 2017 00:56:25 -0400 Received: by mail-qt0-x241.google.com with SMTP id 50so156084qtz.0 for ; Mon, 17 Jul 2017 21:56:25 -0700 (PDT) Received: from yoga.offpageads.com ([138.117.48.223]) by smtp.gmail.com with ESMTPSA id a62sm863698qkd.14.2017.07.17.21.56.21 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 17 Jul 2017 21:56:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=F5RojC8DsaARc76Io7spcgdQjGqwJYIvGyICxDMkYIg=; b=PySfqqaC4aGqiSQTELoHYF52VnynqEcLwrvXOf2jqaGUmkZDGrf3MQ43AB+NkTnO2d Qww5hV62bKw7sy+yTz5KraJSN0uMGn/3e5UJYsFys1R25IZFy86NeYFW6iUm0BRB6sVo HvaQsTWqOiTzYN9T8EKKB+EVDv2OjFuK4YR0D/irDoPl6sT/UtJQZ6RrEDXr9vX/tS1P Mw+BDSqs5CKmsKdbjhNG+WbHymDcLh29/zhGJHG+EvhrarmDJFcMY3YFQOKH1pJ3VwX2 KXhE4oN9c0PkoMWtotvOufnxDZxWT0KMqSknJ0rLdi0+Hce0FMNOtKnsxCnJr8bzdoMs z0yA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=F5RojC8DsaARc76Io7spcgdQjGqwJYIvGyICxDMkYIg=; b=gavH3kkZ5h2Fwp12VqtA0mezBrwqIQRqklT5kB7bVmTPD3KJXKcQY5pNpHI112zh36 yLyvNCxQ9LoHh8tcbYhFkaoVk6y1DkcifmTWPbTHXBTFghK4a9+XKf6h4XgrWMr8sdlN U0KY/H828GGYgOuRcif71oYWzbKGqUvJzTP9r421URmijSG11jdUuR+UGNj/u0t8lFNG 34DFxlldRIyfFYqIWA5ahLHyMzI72cZca635BFZoqIM/dDJWzW+r4OMOtpSH3DMNXHai yLtLymyl9Gui4Iv65uNBgIDf1sT1cJzjheQ/o5AOK7U4RWYqfSXQc614Dv/exBp09oGS 4utQ== X-Gm-Message-State: AIVw110cIq9P5BS3jEGIwF3++vRhRtfhabMgXvDKlyVonxsg95pI0c1c eodhszHjIoA0kQ== X-Received: by 10.237.48.65 with SMTP id 59mr1171405qte.10.1500353784703; Mon, 17 Jul 2017 21:56:24 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Richard Henderson , Jaroslaw Pelczar , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Eric Blake , Stefan Weil Date: Tue, 18 Jul 2017 01:55:40 -0300 Message-Id: <20170718045540.16322-11-f4bug@amsat.org> X-Mailer: git-send-email 2.13.2 In-Reply-To: <20170718045540.16322-1-f4bug@amsat.org> References: <20170718045540.16322-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c0d::241 Subject: [Qemu-devel] [PATCH v5 10/10] tcg/tci: enable bswap16_i64 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Aurelien Jarno , qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Altough correctly implemented, bswap16_i64() never got tested/executed so t= he safety TODO() statement was never removed. Since it got now tested the TODO() can be removed. while running Alex Benn=C3=A9e's image aarch64-linux-3.15rc2-buildroot.img: Trace 0x7fa1904b0890 [0: ffffffc00036cd04] Reviewed-by: Alex Benn=C3=A9e Reviewed-by: Eric Blake Reviewed-by: Stefan Weil ---------------- IN: 0xffffffc00036cd24: 5ac00694 rev16 w20, w20 OP: ---- ffffffc00036cd24 0000000000000000 0000000000000000 ext32u_i64 tmp3,x20 ext16u_i64 tmp2,tmp3 bswap16_i64 x20,tmp2 movi_i64 tmp4,$0x10 shr_i64 tmp2,tmp3,tmp4 ext16u_i64 tmp2,tmp2 bswap16_i64 tmp2,tmp2 deposit_i64 x20,x20,tmp2,$0x10,$0x10 Linking TBs 0x7fa1904b0890 [ffffffc00036cd04] index 0 -> 0x7fa1904b0aa0 [ff= ffffc00036cd24] Trace 0x7fa1904b0aa0 [0: ffffffc00036cd24] TODO qemu/tci.c:1049: tcg_qemu_tb_exec() qemu/tci.c:1049: tcg fatal error Aborted Signed-off-by: Philippe Mathieu-Daud=C3=A9 Signed-off-by: Jaroslaw Pelczar Reviewed-by: Alex Benn=C3=A9e Reviewed-by: Eric Blake Reviewed-by: Stefan Weil --- tcg/tci.c | 1 - 1 file changed, 1 deletion(-) diff --git a/tcg/tci.c b/tcg/tci.c index 4bdc645f2a..f39bfb95c0 100644 --- a/tcg/tci.c +++ b/tcg/tci.c @@ -1046,7 +1046,6 @@ uintptr_t tcg_qemu_tb_exec(CPUArchState *env, uint8_t= *tb_ptr) break; #if TCG_TARGET_HAS_bswap16_i64 case INDEX_op_bswap16_i64: - TODO(); t0 =3D *tb_ptr++; t1 =3D tci_read_r16(&tb_ptr); tci_write_reg64(t0, bswap16(t1)); --=20 2.13.2