From patchwork Wed Nov 7 19:17:35 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fredrik Noring X-Patchwork-Id: 994454 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=2001:4830:134:3::11; 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=nocrew.org Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 42qx7H4P62z9s8r for ; Thu, 8 Nov 2018 06:19:39 +1100 (AEDT) Received: from localhost ([::1]:50381 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gKTMX-0006Ho-6b for incoming@patchwork.ozlabs.org; Wed, 07 Nov 2018 14:19:37 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:55796) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gKTKj-0003vs-PV for qemu-devel@nongnu.org; Wed, 07 Nov 2018 14:17:47 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gKTKg-00046j-V1 for qemu-devel@nongnu.org; Wed, 07 Nov 2018 14:17:45 -0500 Received: from pio-pvt-msa1.bahnhof.se ([79.136.2.40]:60491) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gKTKg-00045e-MU for qemu-devel@nongnu.org; Wed, 07 Nov 2018 14:17:42 -0500 Received: from localhost (localhost [127.0.0.1]) by pio-pvt-msa1.bahnhof.se (Postfix) with ESMTP id 888703F744; Wed, 7 Nov 2018 20:17:36 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at bahnhof.se Received: from pio-pvt-msa1.bahnhof.se ([127.0.0.1]) by localhost (pio-pvt-msa1.bahnhof.se [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 7OoEqC3_neRe; Wed, 7 Nov 2018 20:17:36 +0100 (CET) Received: from localhost (h-41-252.A163.priv.bahnhof.se [46.59.41.252]) (Authenticated sender: mb547485) by pio-pvt-msa1.bahnhof.se (Postfix) with ESMTPA id 16FB53F71C; Wed, 7 Nov 2018 20:17:35 +0100 (CET) Date: Wed, 7 Nov 2018 20:17:35 +0100 From: Fredrik Noring To: Aleksandar Markovic , Aurelien Jarno , Philippe =?utf-8?q?Mathieu-Daud=C3=A9?= Message-ID: MIME-Version: 1.0 Content-Disposition: inline User-Agent: Mutt/1.10.1 (2018-07-13) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 79.136.2.40 Subject: [Qemu-devel] [PATCH v2 0/6] Fix decoding mechanisms of the R5900 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: =?utf-8?q?J=C3=BCrgen?= Urban , qemu-devel@nongnu.org, "Maciej W. Rozycki" Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" This series amends the R5900 support with the following changes: - MFLO1, MFHI1, MTLO1 and MTHI1 are generated in gen_HILO1_tx79 instead of the generic gen_HILO. - DIV1 and DIVU1 are generated in gen_div1_tx79 instead of the generic gen_muldiv. - MOVN, MOVZ, MFHI, MFLO, MTHI, MTLO, MULT, MULTU, DIV, DIVU, DMULT, DMULTU, DDIV, DDIVU and JR are decoded in decode_opc_special_tx79 instead of the generic decode_opc_special_legacy. - Guard check_insn_opc_user_only with INSN_R5900 check. - Guard check_insn with INSN_R5900 check. - Fix HI[ac] and LO[ac] 32-bit truncation with the MIPS64 DSP ASE. This series has been successfully built with the 8 different build configurations {gcc,clang} x -m64 x mips{,64}el-{linux-user,softmmu} in addition successfully completing the R5900 test suite cd tests/tcg/mips/mipsr5900 && make check Changes in v2: - Fix HI and LO 32-bit truncation with the MIPS64 DSP ASE - Decode special R5900 opcodes in decode_opc_special_tx79 - Guard check_insn_opc_user_only with INSN_R5900 check - Guard check_insn with INSN_R5900 check Fredrik Noring (6): target/mips: Fix decoding mechanism of R5900 MFLO1, MFHI1, MTLO1 and MTHI1 target/mips: Fix decoding mechanism of R5900 DIV1 and DIVU1 target/mips: Fix HI[ac] and LO[ac] 32-bit truncation with MIPS64 DSP ASE target/mips: Fix decoding mechanism of special R5900 opcodes target/mips: Guard check_insn_opc_user_only with INSN_R5900 check target/mips: Guard check_insn with INSN_R5900 check target/mips/translate.c | 229 +++++++++++++++++++++++++++++----------- 1 file changed, 170 insertions(+), 59 deletions(-)