From patchwork Thu May 16 22:35:19 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Laurent Vivier X-Patchwork-Id: 1100778 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=vivier.eu Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 454mcw70nZz9s7h for ; Fri, 17 May 2019 08:41:51 +1000 (AEST) Received: from localhost ([127.0.0.1]:37809 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hRP4J-0001OJ-LQ for incoming@patchwork.ozlabs.org; Thu, 16 May 2019 18:41:43 -0400 Received: from eggs.gnu.org ([209.51.188.92]:35288) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hROyS-0005s4-4N for qemu-devel@nongnu.org; Thu, 16 May 2019 18:35:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hROyR-0002BV-7F for qemu-devel@nongnu.org; Thu, 16 May 2019 18:35:40 -0400 Received: from mout.kundenserver.de ([217.72.192.75]:43035) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hROyQ-00027t-TO for qemu-devel@nongnu.org; Thu, 16 May 2019 18:35:39 -0400 Received: from localhost.localdomain ([78.238.229.36]) by mrelayeu.kundenserver.de (mreue109 [212.227.15.183]) with ESMTPSA (Nemesis) id 1MPGJf-1h1mRO2dWH-00PeTG; Fri, 17 May 2019 00:35:35 +0200 From: Laurent Vivier To: qemu-devel@nongnu.org Date: Fri, 17 May 2019 00:35:19 +0200 Message-Id: <20190516223519.7520-7-laurent@vivier.eu> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190516223519.7520-1-laurent@vivier.eu> References: <20190516223519.7520-1-laurent@vivier.eu> MIME-Version: 1.0 X-Provags-ID: V03:K1:S4fUsaEfbFWoVDtO9Z9CNwiL19XuGmWLqaDvU0hnfkSDVnln7KG ADuPgyHIlY8clI6nOyCFRqr1wj/lWrKrZx3Mdh6PwtOiPRbsHNlZ8kGQ1f8jSkVSRKD3eT7 YI9eGy6N47rCCza//liuqFO9qyTCmsTh9xpzyhkcUyTNwtAnEjmWnFDMK/MuczR0slMw4ru FQLH78LUFsapmz7DYyRAA== X-UI-Out-Filterresults: notjunk:1; V03:K0:R3SG6I2/Pz0=:cvoEUxxATRb894hyjl/2c8 GL35H4aQ5z7tI4+s6eTB/DwaAzeNzksf9QR01mJDXJ2xjx8NPjzOeNpQ4+/+f6pvVmbSHeEmN QAswRWL8N3QQfay+kdyvinSruoryNjidNx6kEOtQJMyO80YUQ71kpaCH/8FQ75atAfFITcVl7 9D2bTYQCsO/f2joHKT/z+djI81I8UkjSMK3P+v7Y19MHX3CgDJi19oB7MeZ/fQ4ynRsvp46s5 LVQ6cRPnTbdTKpapNSsu4Z9dsdQL4G9JwSvUWKds84FvtA0oImARXtthd1YO3vKKvo0KHZH4F e0JQATMoczqUVfRdRiywX30mXkqRfuPmgPDOeVTBHb0pSW9rKZNUA6RrqsWF69RtLcZE2yPLi MVZYTHOXTy0UhD7KdzrZ1ekCfOOvA0wNrAtOZYhADF6sLHmugUGQppDjfXmuDTcUU7ufH3j/U ziWUpWNp+rf2IpVFOPa9HT+/5e0D1Ww+HWBcfRNQDqMygMO7Q/uLMNBB5QNAXMePMqZ87UdYR nYJwBHK6wqumgQpMq/3P+4n06jgwKog8jkvXvi9VCI5R50Yt2QAQrIc6L3OBKzfIdajHxB7JU e9IpOpboZjvmFqafQmuryrkjAHk4axPt8A6V/B2jQ3GHnpXezWcFG8b2r+P6x/vzwAADKSSV5 9mBn9A1bec+akKlaWzVrGLGOQyMPfpWYZ4SHs35sAxkw3z4AZuuhAo0cuzckuO3IwiayqeyzF mbyaG5i/pJzZIN5sbPNmbqCuVfOHCAmw+QYd/pUV/5dAzw2UsdzRJj1rUP4= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 217.72.192.75 Subject: [Qemu-devel] [PULL 6/6] target/m68k: Optimize rotate_x() using extract_i32() 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: Thomas Huth , Richard Henderson , Laurent Vivier , =?utf-8?q?Philippe_Mathieu-Daud?= =?utf-8?b?w6k=?= Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" From: Philippe Mathieu-Daudé Optimize rotate_x() using tcg_gen_extract_i32(). We can now free the 'sz' tcg_temp earlier. Since it is allocated with tcg_const_i32(), free it with tcg_temp_free_i32(). Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Message-Id: <20190310003428.11723-6-f4bug@amsat.org> Signed-off-by: Laurent Vivier --- target/m68k/translate.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/target/m68k/translate.c b/target/m68k/translate.c index bf700c01b1..f0534a4ba0 100644 --- a/target/m68k/translate.c +++ b/target/m68k/translate.c @@ -3693,6 +3693,7 @@ static TCGv rotate_x(TCGv reg, TCGv shift, int left, int size) tcg_gen_sub_i32(shl, shl, shift); /* shl = size + 1 - shift */ tcg_gen_sub_i32(shx, sz, shift); /* shx = size - shift */ } + tcg_temp_free_i32(sz); /* reg = (reg << shl) | (reg >> shr) | (x << shx); */ @@ -3708,9 +3709,7 @@ static TCGv rotate_x(TCGv reg, TCGv shift, int left, int size) /* X = (reg >> size) & 1 */ X = tcg_temp_new(); - tcg_gen_shr_i32(X, reg, sz); - tcg_gen_andi_i32(X, X, 1); - tcg_temp_free(sz); + tcg_gen_extract_i32(X, reg, size, 1); return X; }