From patchwork Tue Sep 4 23:14:39 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alistair Francis X-Patchwork-Id: 966116 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=208.118.235.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=wdc.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=wdc.com header.i=@wdc.com header.b="G3KtmFyg"; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=sharedspace.onmicrosoft.com header.i=@sharedspace.onmicrosoft.com header.b="maqv51Te"; dkim-atps=neutral Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 424jQH5pQ8z9s5c for ; Wed, 5 Sep 2018 09:16:39 +1000 (AEST) Received: from localhost ([::1]:52971 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fxKYn-0000IF-Ky for incoming@patchwork.ozlabs.org; Tue, 04 Sep 2018 19:16:37 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58068) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fxKXr-0000EK-DR for qemu-devel@nongnu.org; Tue, 04 Sep 2018 19:15:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fxKXn-0002Cz-Ku for qemu-devel@nongnu.org; Tue, 04 Sep 2018 19:15:39 -0400 Received: from esa1.hgst.iphmx.com ([68.232.141.245]:45245) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fxKXn-0002AQ-7X for qemu-devel@nongnu.org; Tue, 04 Sep 2018 19:15:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1536102935; x=1567638935; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version; bh=dDGKfa+j6KMJV1KE7hDNjZJv/RoLuIytIqJzrzBiuTY=; b=G3KtmFygD92s2haC/Of366PJNlPePhUcbeA2yWJOcjtosNBnWJIBtL2w vQPPZY2mWyprlpmYLIr2YpEKE+j7/8RX//7vyuJa+YYg7HtqEszkjwywO LbD8PaWbLiEVyYLPx956hLj+aml0yebw0mS5PYGsvNXtzfPit3iAjWLse hTb6YzTYVxeYfm6Q4wV0M9dMfhn4QK8yaC+PeUX9LMeCUzgUshxFc2P5J BwJPeXy61ZhCC/iQhgbBfgVOuX4TJGQlxbQ7sL1abVCbyo6Bf7eo33s2F yvKhMEIikNtJPfNk0gvDUn74RAx0k+gts9K9cbnP9miv+5CWfPbPkbPaE w==; X-IronPort-AV: E=Sophos;i="5.53,330,1531756800"; d="scan'208";a="193179307" Received: from mail-dm3nam03lp0016.outbound.protection.outlook.com (HELO NAM03-DM3-obe.outbound.protection.outlook.com) ([207.46.163.16]) by ob1.hgst.iphmx.com with ESMTP; 05 Sep 2018 07:15:32 +0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sharedspace.onmicrosoft.com; s=selector1-wdc-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=PvzC2fLIz72zoFPDAI2Dk+eTPwwW5Jzm9948mOOAxDg=; b=maqv51Tevlxokvdwa2HwyjGm/ku2tTbZ/qCzUBKUWugLPThWlUfKO38HiOnSKSbcpQ2b1TXbT32fR6szKWoS9OhqhW3whgtTNq7cRFpruoQ1ERQ9z5D0ZM3LD95rS/omvpDIgNYxfhjfEITT4oq+EBnTn8WCaZt2g9T3YNZrTYU= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Alistair.Francis@wdc.com; Received: from risc6-mainframe.int.fusionio.com (199.255.44.171) by BN6PR04MB0389.namprd04.prod.outlook.com (2603:10b6:404:91::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1101.18; Tue, 4 Sep 2018 23:15:30 +0000 From: Alistair Francis To: qemu-devel@nongnu.org Date: Tue, 4 Sep 2018 16:14:39 -0700 Message-Id: <20180904231442.18932-7-alistair.francis@wdc.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180904231442.18932-1-alistair.francis@wdc.com> References: <20180904231442.18932-1-alistair.francis@wdc.com> MIME-Version: 1.0 X-Originating-IP: [199.255.44.171] X-ClientProxiedBy: BYAPR07CA0023.namprd07.prod.outlook.com (2603:10b6:a02:bc::36) To BN6PR04MB0389.namprd04.prod.outlook.com (2603:10b6:404:91::18) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 61a070d0-254e-4a25-276c-08d612bc4f26 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989137)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(5600074)(711020)(4618075)(2017052603328)(7153060)(7193020); SRVR:BN6PR04MB0389; X-Microsoft-Exchange-Diagnostics: 1; BN6PR04MB0389; 3:W03lMzcsrr5sl7k2sdfOXIyi7Hva+B+pQzEVNqJNsDqDJiwvGx8LE5Awz5/qaQfIa2OpqHet/RVvzvQdtFIGv8GQ3ge1zUwNkLp+I0OA2XCW4QeeJfcCFcRBfkghBpHUYWCMlfgPLkiwdddNUMFQy4RLnY1edKfAOzzuuu/gWGK4yS8GrEMmDajDZjua2ZInstgvrpO2GroDq3NTsrG8jveaLHNU8O2tYf0UzzU60ipjxaAABQvZGKeltRLVu9x7; 25:00ppP9aTiq7nLKHUFOyxCcvBtSBoS0Qtt9YgYEZPsYd2aoxjMG/7yVsUi6rh17NicqoPbX2K8skyWFZ5k9/yKqlCV8ANaWeRQt61nA8DxCj+w8ZGKOwPEhcMdwCl2XnMQ85cTFDQgoG2kC8zTKadgEmDfqmr2JtRjO9VSr3v8p9kovT+vIkldUdIz6zmzdjW8HtBUjcG56FxXE+h4/1K3gHW8h7g70K2tuWIQoIIPRFAnwGDqrvwk6WUuR6PEqt/Us+TsMF3PBhi9DQuqO8Ws4sVKdEKqioMEjXCIKz68N6ruUFbZJetFQm+xZfrbajo2l5M206aXPQgNccfzbAfLg==; 31:F65GMUCM74SL5N2lYN/FJyejibAJwbLIaw6kTgrlv31UnhpZfxWaArQpCm+22T2l/iKrSZqH3CyCQeqamxWtjlbYCaRyWteUcTVyRe9Ny42BwQLFjlIP36j5K91LcJ2naNBcJqzSAH1PFOqHLwUCGfmi2Byr/PMMmt18k7t9ubROmzL6+1puk02kHPd9JEpWMnMJOuc3GsDPxre/rGI3Hkj+nZUaNMOsT12WZR8yuGA= X-MS-TrafficTypeDiagnostic: BN6PR04MB0389: WDCIPOUTBOUND: EOP-TRUE X-Microsoft-Exchange-Diagnostics: 1; BN6PR04MB0389; 20:UVV0Qho5fXg0RBIZeqA7+ZdlgsNi0eOlWHdkxVMN/pSlMqTE+4L8kpZ7tHk4qLEIcB1H5yUKrIZj+94+3LYqOQpuZhG9hf8Qc7pl//Lm7pL+Rkc9W9sPQahMDr27PucLu0jBmeE7OVqtkS4qVioG+yxzaSNAAC5qi1kMtztkEjQFeQGs6sDm1kNUU4iqBgx0BdAQC1zsiBAtV3mQqwDCGcQmNiGD4NR6d2tPxqpkixQoBAmDnzzz8YqNLvrrt1CyY+HwBEdqTCzn78Y7e2QPEk8kUYDrsthKNDSnY2kKDVGpfQAJut+QHTzT79ckyTJYg5MExqv0zqWu0eG6qG1cx3b4FoAXlsXkFjg+TOu3ecp4ZIc7U0y+4NIu+Kiz2jTw+PlZJfIZrtm0hcXzs/SoB6sCkjMICRJCzXJBqJzftKy9YhnJXmu+Xg+m+ML2OnC9B23skw686K3JD/NlfNcVGbYOOyAbwI3mmoC+bSVlvLkNviJ/WlwEPzCuEHTz9lUz; 4:B6HD/l+gEr/4niCsdtric5t94dEC2XPA34WgzX19M4SXgDMf1EWYOv7GqAxHBOEIV1c8lj9B7RUFldVdooWVHamG3HkmF9pDRi+hZpGxejBJI52Bbk2OmR6n+tTr4BJm+iKiJ4SEG4DQXBIPf6OYZ9gn7RuaxfnL8BaRXfQ4NAyYFCN7N2t5UJIfSBBTFRWehaziOLLhijuWHsEHC9ooNMOsKaRXsMflTfi30pPpgcP1BOHDuwGuz6DkmA2NuBu0159qCmEizT+84FadcC2LtfdwNDin54K+KHdj5sPf3FtWh0f+39oi9GP+ke2ijwv7 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(166708455590820); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231311)(944501410)(52105095)(3002001)(10201501046)(93006095)(93001095)(6055026)(149027)(150027)(6041310)(20161123564045)(20161123558120)(20161123562045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(201708071742011)(7699016); SRVR:BN6PR04MB0389; BCL:0; PCL:0; RULEID:; SRVR:BN6PR04MB0389; X-Forefront-PRVS: 0785459C39 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(39860400002)(376002)(136003)(346002)(396003)(366004)(199004)(189003)(6512007)(2906002)(486006)(6306002)(51416003)(76176011)(4326008)(68736007)(5660300001)(2351001)(44832011)(6916009)(52116002)(6486002)(97736004)(106356001)(2361001)(105586002)(478600001)(36756003)(3846002)(1076002)(6116002)(386003)(8936002)(305945005)(11346002)(7736002)(25786009)(26005)(54906003)(81156014)(8676002)(2616005)(53936002)(316002)(50466002)(186003)(956004)(16586007)(66066001)(16526019)(50226002)(86362001)(81166006)(966005)(72206003)(446003)(476003)(47776003)(6506007)(48376002); DIR:OUT; SFP:1102; SCL:1; SRVR:BN6PR04MB0389; H:risc6-mainframe.int.fusionio.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN6PR04MB0389; 23:M5XEXKgAGydtHUDE2gjT2tyjcFrUwagbfnlwVvtCP?= DTYbDxZAzRn/izNwHXb6q8FcaFjclsU1aZ18MuoC9ZiqfmrHoIM1zTAS7qSIcVnaW1uzEwy5uAjOP4YNXAa5ztzpqi+n9J4CHyARMuPp9s/PFsZkT5+uBXu/2RTHcQHqUl3YpJMiIKtQ0msLcuhRWkyIEwck7HTD6RJ/zwmv2xFParEhx5AYfFEecZ5wukSeChkiR1mgARvv01/oqPRTSOC45vGLt472f+Bw2hHawCdxv5Tz3OfNlrhIJd7Qw9yb1KWXhsRI1KzctYeWapqBYWzq1U71uRQ3C6A4XyUynts7EUdoS8JDAMXILHixnf+QZHlVrtmOBraJJlRdx3TLhSzhP4Y7hx2eprn6s0M9PRneIqvFN28CCv5RZFtOy+gOFjhuTEgSjXTam2VFIKENqfT+ChMiisgih3r8nqREGTeSHrT4bWrf+chYyFCVXcXMQQtKnGwCEBZgJpi8yIRIuoV5Di6Qn6OPG0nyiyzWFOaESpyXN1BKiAchFyE/mur+Y0HTFZtcHFpPiz/M9pekmC/Yt/ujDOIqKcELOPvHGu6hD0yXuPcT/bSuro3ua9Vvcrz2ZlvganfPqscqrNht5DFuDLzrbZo01UoByQ6e8sYhLjU2XLh6Sdeqod5yo9mHq9+amrLoemgzB7yTZBBwuFbcJGLPka1Gx5dDawrWN7a3Epl/Yoxd9EiGlzBKbTczbvWVpptFA6PFZZeFQwQkuac/6cabHDGv+ftzLGMmBWtqx2/4VI8rapnrc+TQZde4u+k968cfB82Kn6skeutvrqJldoE0+WP5hXrQwhd7jhmC1uo08q86W0P5plmO726d0G+XcZ72Z37y/bW68zDpKpO9HZKnF1ReFZKCIPSU8F+oYyDHekOwPC5+JXqrcwBio9Pq5Xx+U7/UqjuOL4P+QHNKT8d8KYyXMucdN6OjfPcB0RIKmgdpvAt4d88bEqgEsoSUitijvNmXPcjXPZ3kyVHLrPOfCLsI3XxNAPl+ngYRN7ndzc6mXy/Eh68+gGb2kkmAfSpcP7L0lZ/bNxnewyInQyhzKQuUUd09J8M3YgAloz7vQve3pUzp6+W2lQc/Q9QpG9YpTDAcFtato4lzoGvDQt7gylfCbS3PH35atVb+C19+z24Qbw6l4qI6gidv/srO/6+3xU4Vtb3w1znNllmUcYMXQ/7u6boizuDwj0tQSwytE5ZdxysStBrpn6V8Lm2sHKtg6Iw/awrkBOmpUsU54y0uefF3cIV4sJjOpg0Vcx4ekQuOjWA+4LBWIQb6iE= X-Microsoft-Antispam-Message-Info: UXRDdEpK8VCnXm/YrarEYPh2SyqXFUBUVCeqLnboy3iANxVEP6uH+nQa4+8JjQJXZXDJiHGvagNuXJZ8mKC8AYXK5gByt86tcred49s9ZsE0KzkEKKc9B2v9fziYltC/6GKTIbQWJkrn3CsIdNAoVx/qTPxjHwBJyVZSrPA0sm1x610sOKr3/9BGDVf3vXqWjfk9p6PR+IC6PPUF32G19j1SOYYYinjJfV+h2vbXCSpQe0sJ6peFUgjLGoZ2KMjNU75ksojjaNNdLUdOTw9N1Rhsg9zjS8ZYi9FtNXGccyPTdMiOC2XuJWm1Kf9Xdeeuri93e0mq44mkrWSlccIvvPeaG0m9STBzRYTZA/RcrzY= X-Microsoft-Exchange-Diagnostics: 1; BN6PR04MB0389; 6:6vIu01gWiirlrqinOYseQ8jt5Et/b1WvAI5fM9KMQd9ApBn1wpE0Zsvq1Yluo5ZyN5OVfsdj0FJmb+P5/cr4dOF8SP0jcjcI+EHOHGP9C1TBeIlLf/N4boTysQVMBC8g46b1wBXgrPVh2wx2UlMXrVMOqaYfYUKEsdWk4gK9TciICKa+4clpcFE4rHgiWjwb8tkxbj295ruHV3W6WzOvxmQcytANHzre4nBrLsQjzF0bneJdqWKlNYKJzskjqTNEVLmeq2xbNN0ExaxQEvS0G3t3Ei0aFms2bbL8ZAePxj1H+ZalGFEE//A/qqG2T1DE3oRMsnhEr+Ej6TMMHEsuPZsdjhld1IoaT58M6l9LbsZ/4PlmI2iVGeOS6Gctskd6NQU9Hb2S2m8inglBOsUsr/rg9pHR9NX2+0A62TqnF0YuOrQ4o6vyte1Hios3CESu87EpuUhEojnKSQW3adWWrQ==; 5:sw2kiwrmRvz/ej8JdGl4bN/jfD6HCyl6aw8Q5IsKHICfgu2VIaEmVLcxB6OvNt5AXsEGJTAFQwVamm1Jh36wrFW9DhIwj4J0l0YuweVSQPy+XPkiW561ZfiImTD5qlXVPaPHY/rlQTgAyizhfcefweu70MeaBd2IncZ8fulBqlQ=; 7:Y/bDJf0pGy1N81ZltVgNJ/gffaSmCUTc+Jgq1vB6I382fGIPcZ3P36bMZ+mL1i3tN2v/LP0KnCRopQcdJd1QEqV6iAo3t/1C+CmmuhvEEV+8REOYcMDlMFKmQtH4p72ipmfIJ5GmLR0y086FS5bXeux73dUIZiP0ZpfH60YFf/5MqLST+U9y96KEqlKfAMTUM5P2YYu9+1FheKCnC9MDlpM53CU0nqwczlO/WGuIfJICdX7taJNfihTh68iWJNYv SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: wdc.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2018 23:15:30.7118 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 61a070d0-254e-4a25-276c-08d612bc4f26 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: b61c8803-16f3-4c35-9b17-6f65f441df86 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR04MB0389 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 68.232.141.245 Subject: [Qemu-devel] [PULL 6/9] target/riscv: call gen_goto_tb on DISAS_TOO_MANY 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: "Emilio G. Cota" , Alistair Francis Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" From: "Emilio G. Cota" Performance impact of this and the previous commits, measured with the very-easy-to-cross-compile rv8-bench: https://github.com/rv8-io/rv8-bench Host: Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz - Key: before: master after1,2,3: the 3 commits in this series (i.e. 3 is this commit) - User-mode: bench before after1 after2 after3 final speedup --------------------------------------------------------- aes 1.12s 1.12s 1.10s 1.00s 1.12 bigint 0.78s 0.78s 0.78s 0.78s 1 dhrystone 0.96s 0.97s 0.49s 0.49s 1.9591837 miniz 1.94s 1.94s 1.88s 1.86s 1.0430108 norx 0.51s 0.51s 0.49s 0.48s 1.0625 primes 0.85s 0.85s 0.84s 0.84s 1.0119048 qsort 4.87s 4.88s 1.86s 1.86s 2.6182796 sha512 0.76s 0.77s 0.64s 0.64s 1.1875 (after1 only applies to softmmu, so no surprises here) - Full-system (fedora): bench before after1 after2 after3 final speedup --------------------------------------------------------- aes 2.68s 2.54s 2.60s 2.34s 1.1452991 bigint 1.61s 1.56s 1.55s 1.64s 0.98170732 dhrystone 1.78s 1.67s 1.25s 1.24s 1.4354839 miniz 3.53s 3.35s 3.28s 3.35s 1.0537313 norx 1.13s 1.09s 1.07s 1.06s 1.0660377 primes 15.37s 15.41s 15.20s 15.37s 1 qsort 7.20s 6.71s 3.85s 3.96s 1.8181818 sha512 1.07s 1.04s 0.90s 0.90s 1.1888889 SoftMMU slows things down, so the numbers are less sensitive. Cross-page jumps improve things a little bit, though. Note that I'm not showing here averages, just results from a single run, so with primes there isn't much to worry about. Signed-off-by: Emilio G. Cota Reviewed-by: Richard Henderson Signed-off-by: Alistair Francis --- target/riscv/translate.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/target/riscv/translate.c b/target/riscv/translate.c index c769edc359..72d34cd4b1 100644 --- a/target/riscv/translate.c +++ b/target/riscv/translate.c @@ -1868,12 +1868,7 @@ static void riscv_tr_tb_stop(DisasContextBase *dcbase, CPUState *cpu) switch (ctx->base.is_jmp) { case DISAS_TOO_MANY: - tcg_gen_movi_tl(cpu_pc, ctx->base.pc_next); - if (ctx->base.singlestep_enabled) { - gen_exception_debug(); - } else { - tcg_gen_exit_tb(NULL, 0); - } + gen_goto_tb(ctx, 0, ctx->base.pc_next); break; case DISAS_NORETURN: break;