From nobody Mon Feb 9 13:38:27 2026 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.zoho.com; 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 1486617246469766.7424903825149; Wed, 8 Feb 2017 21:14:06 -0800 (PST) Received: from localhost ([::1]:35613 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cbh3V-0004IC-3j for importer@patchew.org; Thu, 09 Feb 2017 00:14:05 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38253) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cbgjD-0002eb-4H for qemu-devel@nongnu.org; Wed, 08 Feb 2017 23:53:08 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cbgj9-00080B-HR for qemu-devel@nongnu.org; Wed, 08 Feb 2017 23:53:07 -0500 Received: from mail-pg0-x242.google.com ([2607:f8b0:400e:c05::242]:35068) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1cbgj9-000803-C7 for qemu-devel@nongnu.org; Wed, 08 Feb 2017 23:53:03 -0500 Received: by mail-pg0-x242.google.com with SMTP id 204so16794149pge.2 for ; Wed, 08 Feb 2017 20:53:03 -0800 (PST) Received: from bigtime.home ([1.128.80.123]) by smtp.gmail.com with ESMTPSA id b75sm24202832pfb.90.2017.02.08.20.52.59 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 08 Feb 2017 20:53:01 -0800 (PST) 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; bh=+o5K7wfK/nw92pxEWaQ6Hon4ZqtJ2UMfeX3C6LBrEx0=; b=ngP8Hh2/MRcZRjqEI62Ck6k+Zu2fOpQwg9477pQsyBZ5D3WIEXxnf5093D2FAkDZ4G jXy3cSC9Yunr75s8TxRP0BpTcoUC1YkO2jcKhMfG3DPclhNISUaXUTQrDPwOaggnuuWo YfmxSYaS+7muF/LB9beMrPpbZx9DkhoApCoRxRxRpvhxtWaB4v8IDosNcsC+n/7qwq/G eG59Ii3OD5elqB9saDJ1HTByHxgnmj2tkRBgzXKgit7BMG4Gef5FrndV/Qmd6QLk6zx6 FZSmZjMWeFpmbA7LGslmtz1cZNjolL6N9bUYkVa6/BtzB2Ex4/Cusmxn1CaAgIefusan 2U2A== 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; bh=+o5K7wfK/nw92pxEWaQ6Hon4ZqtJ2UMfeX3C6LBrEx0=; b=DzOZ2RPT+XnqF3p4YvdrFG4ugWuzzhl8Y0bzevHzDxcjUbj/XKEkeYkKG2Ag32wKEw BhiG4LGnEg4aCZxrReMNsTsIg2ml/gmrGtRpj3usbvMr2SbM7H2XHaELNqyZFtVjdYPL 6Ifbcq37c/N7w+V2SAWigwpxEr57Mj68lymuycg3J2GJH7qUGYE4BQW3z+0SnceNE5+k 2BMDCOrznLBbjLlsAu+QgTPwmjQKEccPYOqmpuEXZDsuVD30JKwbacRTDBcsyQt+gVxW UZGENg3f2izCGM8BWLGsQUhw+yZBbUB5k0t5LmhCM/z+TpCH6sLU4/hSgBTsTjX6cHjj Gduw== X-Gm-Message-State: AMke39mstBwDJw0e//wsJsfhpIrknTYzdDbjhOSL8Xh2HKfe4vDhM//Q+5casoeCfPoEXg== X-Received: by 10.99.124.75 with SMTP id l11mr1627307pgn.46.1486615982416; Wed, 08 Feb 2017 20:53:02 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Date: Wed, 8 Feb 2017 20:51:52 -0800 Message-Id: <20170209045154.16868-21-rth@twiddle.net> X-Mailer: git-send-email 2.9.3 In-Reply-To: <20170209045154.16868-1-rth@twiddle.net> References: <20170209045154.16868-1-rth@twiddle.net> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2607:f8b0:400e:c05::242 Subject: [Qemu-devel] [PATCH 20/22] target/openrisc: Optimize l.jal to next 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: shorne@gmail.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" This allows the tcg optimizer to see, and fold, all of the constants involved in a GOT base register load sequence. Signed-off-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- target/openrisc/translate.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/target/openrisc/translate.c b/target/openrisc/translate.c index 66064e1..cda84b6 100644 --- a/target/openrisc/translate.c +++ b/target/openrisc/translate.c @@ -198,7 +198,11 @@ static void gen_jump(DisasContext *dc, int32_t n26, ui= nt32_t reg, uint32_t op0) tcg_gen_movi_tl(jmp_pc, tmp_pc); break; case 0x01: /* l.jal */ - tcg_gen_movi_tl(cpu_R[9], (dc->pc + 8)); + tcg_gen_movi_tl(cpu_R[9], dc->pc + 8); + /* Optimize jal being used to load the PC for PIC. */ + if (tmp_pc =3D=3D dc->pc + 8) { + return; + } tcg_gen_movi_tl(jmp_pc, tmp_pc); break; case 0x03: /* l.bnf */ --=20 2.9.3