From patchwork Tue Jan 7 16:05:58 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tom Musta X-Patchwork-Id: 307726 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 59B862C00E4 for ; Wed, 8 Jan 2014 04:29:30 +1100 (EST) Received: from localhost ([::1]:41412 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W0ZFQ-0000cd-Uj for incoming@patchwork.ozlabs.org; Tue, 07 Jan 2014 11:11:20 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:53524) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W0ZBJ-0004V4-Qp for qemu-devel@nongnu.org; Tue, 07 Jan 2014 11:07:16 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1W0ZBB-0000XI-Du for qemu-devel@nongnu.org; Tue, 07 Jan 2014 11:07:05 -0500 Received: from mail-oa0-x22e.google.com ([2607:f8b0:4003:c02::22e]:56101) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W0ZBB-0000X9-8z; Tue, 07 Jan 2014 11:06:57 -0500 Received: by mail-oa0-f46.google.com with SMTP id l6so376487oag.33 for ; Tue, 07 Jan 2014 08:06:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=jLa56OHjcjz8Wpim38b1t17apnqJi0wLzHWk/W5klk4=; b=rY0It4QKftxD1WBGlqbKK94kSplu35cGtL8wIuoKsKmogpn96WypsyAyDKDOYA/IcZ 8TmLFcdnJ2MhYYNVcaI1vTCbphjHuCL91svG0Gzue+Dwyl6+8RJaz5BYtnpKTT19lXwD H6VAJn+9b3plE36YJuO1uTvadW1FQS/P9yqPsChYP+tKE10+nNMuIOd60ijFSUO5Ihzf 3d9WKkz243/E5K4AKDpRi5iRAg9Fa2ETftVWcXYOZ7y4ZX3QuZ2igZ306VvzESmggFl5 wUAGgmeVoNU9dVsq5iEKvdW3+wDZA5gHvyKMXtWh+p8qCMkdtu8y96XgJ7tAMpiSAISf WBbQ== X-Received: by 10.60.165.2 with SMTP id yu2mr335038oeb.78.1389110816777; Tue, 07 Jan 2014 08:06:56 -0800 (PST) Received: from tmusta-sc.rchland.ibm.com (rchp4.rochester.ibm.com. [129.42.161.36]) by mx.google.com with ESMTPSA id z5sm90198346obg.13.2014.01.07.08.06.55 for (version=TLSv1.1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Tue, 07 Jan 2014 08:06:56 -0800 (PST) From: Tom Musta To: qemu-devel@nongnu.org Date: Tue, 7 Jan 2014 10:05:58 -0600 Message-Id: <1389110770-5199-11-git-send-email-tommusta@gmail.com> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <1389110770-5199-1-git-send-email-tommusta@gmail.com> References: <1389110770-5199-1-git-send-email-tommusta@gmail.com> X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2607:f8b0:4003:c02::22e Cc: Tom Musta , qemu-ppc@nongnu.org Subject: [Qemu-devel] [V4 PATCH 10/22] target-ppc: Add Flag for ISA V2.06 Floating Point Conversion X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org This patch adds a flag for the floating point conversion instructions introduced in Power ISA 2.06B. Signed-off-by: Tom Musta Reviewed-by: Richard Henderson --- V4: Split single flag into multiple flags per discussion with Alex Graf and Scott Wood. Added to Power7+ config. target-ppc/cpu.h | 5 ++++- target-ppc/translate_init.c | 6 +++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/target-ppc/cpu.h b/target-ppc/cpu.h index 3057ac8..4a68ce2 100644 --- a/target-ppc/cpu.h +++ b/target-ppc/cpu.h @@ -1883,11 +1883,14 @@ enum { PPC2_DIVE_ISA206 = 0x0000000000000100ULL, /* ISA 2.06B larx/stcx. instructions */ PPC2_ATOMIC_ISA206 = 0x0000000000000200ULL, + /* ISA 2.06B floating point integer conversion */ + PPC2_FP_CVT_ISA206 = 0x0000000000000400ULL, #define PPC_TCG_INSNS2 (PPC2_BOOKE206 | PPC2_VSX | PPC2_PRCNTL | PPC2_DBRX | \ PPC2_ISA205 | PPC2_VSX207 | PPC2_PERM_ISA206 | \ - PPC2_DIVE_ISA206 | PPC2_ATOMIC_ISA206) + PPC2_DIVE_ISA206 | PPC2_ATOMIC_ISA206 | \ + PPC2_FP_CVT_ISA206) }; /*****************************************************************************/ diff --git a/target-ppc/translate_init.c b/target-ppc/translate_init.c index 5778760..3fb849b 100644 --- a/target-ppc/translate_init.c +++ b/target-ppc/translate_init.c @@ -7238,7 +7238,7 @@ POWERPC_FAMILY(POWER7)(ObjectClass *oc, void *data) PPC_POPCNTB | PPC_POPCNTWD; pcc->insns_flags2 = PPC2_VSX | PPC2_DFP | PPC2_DBRX | PPC2_ISA205 | PPC2_PERM_ISA206 | PPC2_DIVE_ISA206 | - PPC2_ATOMIC_ISA206; + PPC2_ATOMIC_ISA206 | PPC2_FP_CVT_ISA206; pcc->msr_mask = 0x800000000284FF37ULL; pcc->mmu_model = POWERPC_MMU_2_06; #if defined(CONFIG_SOFTMMU) @@ -7278,7 +7278,7 @@ POWERPC_FAMILY(POWER7P)(ObjectClass *oc, void *data) PPC_POPCNTB | PPC_POPCNTWD; pcc->insns_flags2 = PPC2_VSX | PPC2_DFP | PPC2_DBRX | PPC2_ISA205 | PPC2_PERM_ISA206 | PPC2_DIVE_ISA206 | - PPC2_ATOMIC_ISA206; + PPC2_ATOMIC_ISA206 | PPC2_FP_CVT_ISA206; pcc->msr_mask = 0x800000000204FF37ULL; pcc->mmu_model = POWERPC_MMU_2_06; #if defined(CONFIG_SOFTMMU) @@ -7318,7 +7318,7 @@ POWERPC_FAMILY(POWER8)(ObjectClass *oc, void *data) PPC_POPCNTB | PPC_POPCNTWD; pcc->insns_flags2 = PPC2_VSX | PPC2_VSX207 | PPC2_DFP | PPC2_DBRX | PPC2_PERM_ISA206 | PPC2_DIVE_ISA206 | - PPC2_ATOMIC_ISA206; + PPC2_ATOMIC_ISA206 | PPC2_FP_CVT_ISA206; pcc->msr_mask = 0x800000000284FF36ULL; pcc->mmu_model = POWERPC_MMU_2_06; #if defined(CONFIG_SOFTMMU)