From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51118) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VYZmd-0002uA-ER for qemu-devel@nongnu.org; Tue, 22 Oct 2013 07:06:00 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VYZmX-0004ry-TM for qemu-devel@nongnu.org; Tue, 22 Oct 2013 07:05:55 -0400 Received: from ozlabs.org ([2402:b800:7003:1:1::1]:34633) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VYZmX-0004rW-Gy for qemu-devel@nongnu.org; Tue, 22 Oct 2013 07:05:49 -0400 Date: Tue, 22 Oct 2013 22:05:46 +1100 From: Anton Blanchard Message-ID: <20131022220546.2a20d02a@kryten> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] [PATCH 1/7] Declare and Enable VSX List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: agraf@suse.de Cc: tommusta@gmail.com, qemu-ppc@nongnu.org, qemu-devel@nongnu.org, rth@twiddle.net From: Tom Musta This patch adds the flag POWERPC_FLAG_VSX to the list of defined flags and also adds this flag to the list of supported features of the Power7 and Power8 CPUs. Additionally, the VSX instructions are added to the list of TCG-enabled instruction. Signed-off-by: Tom Musta Signed-off-by: Anton Blanchard --- Index: b/target-ppc/cpu.h =================================================================== --- a/target-ppc/cpu.h +++ b/target-ppc/cpu.h @@ -549,6 +549,8 @@ enum { POWERPC_FLAG_BUS_CLK = 0x00020000, /* Has CFAR */ POWERPC_FLAG_CFAR = 0x00040000, + /* Has VSX */ + POWERPC_FLAG_VSX = 0x00080000, }; /*****************************************************************************/ @@ -1870,7 +1872,8 @@ enum { /* Book I 2.05 PowerPC specification */ PPC2_ISA205 = 0x0000000000000020ULL, -#define PPC_TCG_INSNS2 (PPC2_BOOKE206 | PPC2_PRCNTL | PPC2_DBRX | PPC2_ISA205) +#define PPC_TCG_INSNS2 (PPC2_BOOKE206 | PPC2_VSX | PPC2_PRCNTL | PPC2_DBRX | \ + PPC2_ISA205) }; /*****************************************************************************/ Index: b/target-ppc/translate_init.c =================================================================== --- a/target-ppc/translate_init.c +++ b/target-ppc/translate_init.c @@ -7242,7 +7242,8 @@ POWERPC_FAMILY(POWER7)(ObjectClass *oc, pcc->bfd_mach = bfd_mach_ppc64; pcc->flags = POWERPC_FLAG_VRE | POWERPC_FLAG_SE | POWERPC_FLAG_BE | POWERPC_FLAG_PMM | - POWERPC_FLAG_BUS_CLK | POWERPC_FLAG_CFAR; + POWERPC_FLAG_BUS_CLK | POWERPC_FLAG_CFAR | + POWERPC_FLAG_VSX; pcc->l1_dcache_size = 0x8000; pcc->l1_icache_size = 0x8000; } @@ -7276,7 +7277,8 @@ POWERPC_FAMILY(POWER8)(ObjectClass *oc, pcc->bfd_mach = bfd_mach_ppc64; pcc->flags = POWERPC_FLAG_VRE | POWERPC_FLAG_SE | POWERPC_FLAG_BE | POWERPC_FLAG_PMM | - POWERPC_FLAG_BUS_CLK | POWERPC_FLAG_CFAR; + POWERPC_FLAG_BUS_CLK | POWERPC_FLAG_CFAR | + POWERPC_FLAG_VSX; pcc->l1_dcache_size = 0x8000; pcc->l1_icache_size = 0x8000; }