From 9570835e5597037bee5042edf822675e715b3caf Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Tue, 11 Apr 2017 07:36:43 +0930 Subject: [PATCH] Bye Bye PPC_OPCODE_VSX3 This bit is also useless as it can be replaced with PPC_OPCODE_POWER9. Defining the VSX2 and VSX3 selection based on cpu bits also lets the assembler/disassembler distinguish between the power7 VSX opcodes and the power8 ones. Note that this change means -mvsx now reverts back to just adding the power7 VSX insns. include/ * opcode/ppc.h (PPC_OPCODE_VSX3): Delete. opcodes/ * ppc-dis.c (ppc_opts): Remove PPC_OPCODE_VSX3. * ppc-opc.c (PPCVSX2): Define as PPC_OPCODE_POWER8. (PPCVSX3): Define as PPC_OPCODE_POWER9. --- include/ChangeLog | 1 + include/opcode/ppc.h | 3 --- opcodes/ChangeLog | 5 ++++- opcodes/ppc-dis.c | 6 ++---- opcodes/ppc-opc.c | 4 ++-- 5 files changed, 9 insertions(+), 10 deletions(-) diff --git a/include/ChangeLog b/include/ChangeLog index 9e3223c..e6a92a8 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,6 +1,7 @@ 2017-04-11 Alan Modra * opcode/ppc.h (PPC_OPCODE_ALTIVEC2): Delete. + (PPC_OPCODE_VSX3): Delete. 2017-04-06 Pip Cet diff --git a/include/opcode/ppc.h b/include/opcode/ppc.h index c0112db..8c41cdc 100644 --- a/include/opcode/ppc.h +++ b/include/opcode/ppc.h @@ -208,9 +208,6 @@ extern const int vle_num_opcodes; /* Opcode is only supported by Power9 architecture. */ #define PPC_OPCODE_POWER9 0x20000000000ull -/* Opcode is supported by Vector-Scalar (VSX) Unit from ISA 2.08. */ -#define PPC_OPCODE_VSX3 0x40000000000ull - /* Opcode is supported by e200z4. */ #define PPC_OPCODE_E200Z4 0x80000000000ull diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index ef69ec4..eb432a7 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,8 +1,11 @@ 2017-04-11 Alan Modra - * ppc-dis.c (ppc_opts): Remove PPC_OPCODE_ALTIVEC2. + * ppc-dis.c (ppc_opts): Remove PPC_OPCODE_ALTIVEC2 and + PPC_OPCODE_VSX3. * ppc-opc.c (PPCVEC2): Define as PPC_OPCODE_POWER8|PPC_OPCODE_E6500. (PPCVEC3): Define as PPC_OPCODE_POWER9. + (PPCVSX2): Define as PPC_OPCODE_POWER8. + (PPCVSX3): Define as PPC_OPCODE_POWER9. 2017-04-10 Alan Modra diff --git a/opcodes/ppc-dis.c b/opcodes/ppc-dis.c index 863b429..64fadc2 100644 --- a/opcodes/ppc-dis.c +++ b/opcodes/ppc-dis.c @@ -177,8 +177,7 @@ struct ppc_mopt ppc_opts[] = { { "power9", (PPC_OPCODE_PPC | PPC_OPCODE_ISEL | PPC_OPCODE_64 | PPC_OPCODE_POWER4 | PPC_OPCODE_POWER5 | PPC_OPCODE_POWER6 | PPC_OPCODE_POWER7 | PPC_OPCODE_POWER8 | PPC_OPCODE_POWER9 - | PPC_OPCODE_HTM | PPC_OPCODE_ALTIVEC - | PPC_OPCODE_VSX | PPC_OPCODE_VSX3 ), + | PPC_OPCODE_HTM | PPC_OPCODE_ALTIVEC | PPC_OPCODE_VSX), 0 }, { "ppc", PPC_OPCODE_PPC, 0 }, @@ -221,8 +220,7 @@ struct ppc_mopt ppc_opts[] = { { "pwr9", (PPC_OPCODE_PPC | PPC_OPCODE_ISEL | PPC_OPCODE_64 | PPC_OPCODE_POWER4 | PPC_OPCODE_POWER5 | PPC_OPCODE_POWER6 | PPC_OPCODE_POWER7 | PPC_OPCODE_POWER8 | PPC_OPCODE_POWER9 - | PPC_OPCODE_HTM | PPC_OPCODE_ALTIVEC - | PPC_OPCODE_VSX | PPC_OPCODE_VSX3 ), + | PPC_OPCODE_HTM | PPC_OPCODE_ALTIVEC | PPC_OPCODE_VSX), 0 }, { "pwrx", PPC_OPCODE_POWER | PPC_OPCODE_POWER2, 0 }, diff --git a/opcodes/ppc-opc.c b/opcodes/ppc-opc.c index 8c34ec1..7294c6d 100644 --- a/opcodes/ppc-opc.c +++ b/opcodes/ppc-opc.c @@ -3092,8 +3092,8 @@ extract_vleil (unsigned long insn, #define PPCVEC2 (PPC_OPCODE_POWER8 | PPC_OPCODE_E6500) #define PPCVEC3 PPC_OPCODE_POWER9 #define PPCVSX PPC_OPCODE_VSX -#define PPCVSX2 PPC_OPCODE_VSX -#define PPCVSX3 PPC_OPCODE_VSX3 +#define PPCVSX2 PPC_OPCODE_POWER8 +#define PPCVSX3 PPC_OPCODE_POWER9 #define POWER PPC_OPCODE_POWER #define POWER2 PPC_OPCODE_POWER | PPC_OPCODE_POWER2 #define PWR2COM PPC_OPCODE_POWER | PPC_OPCODE_POWER2 | PPC_OPCODE_COMMON -- 2.7.4