From ef5a96d564a22a25d31533c7377eede42c12b25c Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Fri, 3 Jul 2015 10:56:26 +0930 Subject: Remove ppc860, ppc750cl, ppc7450 insns from common ppc. Back in the day support for these processors was added, we probably didn't want to waste PPC_OPCODE bits on minor variations. I've had a complaint that disassembly of mfspr/mtspr was wrong for power8. This patch fixes that problem. Note that since -m860/-m850/-m821 are new gas options enabling the mpc8xx specific mfspr/mtspr variants it is possible that this change will break some mpc8xx assembly code. ie. you might need to modify makefiles to pass -m860 to gas. include/opcode/ * ppc.h (PPC_OPCODE_750, PPC_OPCODE_7450, PPC_OPCODE_860): Define. opcodes/ * ppc-opc.c (PPC750, PPC7450, PPC860): Define using PPC_OPCODE_*. * ppc-dis.c (ppc_opts): Add 821, 850 and 860 entries. Add PPC_OPCODE_7450 to 7450 entry. Add PPC_OPCODE_750 to 750cl entry. gas/ * config/tc-ppc.c (md_show_usage): Add -m821, -m850, -m860. * doc/c-ppc.texi (PowerPC-Opts): Likewise. gas/testsuite/ * gas/ppc/titan.d: Correct mfmcsrr0 disassembly. --- include/opcode/ChangeLog | 4 ++++ include/opcode/ppc.h | 9 +++++++++ 2 files changed, 13 insertions(+) (limited to 'include') diff --git a/include/opcode/ChangeLog b/include/opcode/ChangeLog index def2131..2f86116 100644 --- a/include/opcode/ChangeLog +++ b/include/opcode/ChangeLog @@ -1,3 +1,7 @@ +2015-07-03 Alan Modra + + * ppc.h (PPC_OPCODE_750, PPC_OPCODE_7450, PPC_OPCODE_860): Define. + 2015-07-01 Sandra Loosemore Cesar Philippidis diff --git a/include/opcode/ppc.h b/include/opcode/ppc.h index 5246365..6106dec 100644 --- a/include/opcode/ppc.h +++ b/include/opcode/ppc.h @@ -195,6 +195,15 @@ extern const int vle_num_opcodes; that isn't a superset of POWER8, we can define this to its own mask. */ #define PPC_OPCODE_HTM PPC_OPCODE_POWER8 +/* Opcode is supported by ppc750cl. */ +#define PPC_OPCODE_750 0x4000000000ull + +/* Opcode is supported by ppc7450. */ +#define PPC_OPCODE_7450 0x8000000000ull + +/* Opcode is supported by ppc821/850/860. */ +#define PPC_OPCODE_860 0x10000000000ull + /* A macro to extract the major opcode from an instruction. */ #define PPC_OP(i) (((i) >> 26) & 0x3f) -- cgit v1.1