Blame SOURCES/gdb-rhbz1320945-power9-20of38.patch

01917d
commit ef5a96d564a22a25d31533c7377eede42c12b25c
01917d
Author: Alan Modra <amodra@gmail.com>
01917d
Date:   Fri Jul 3 10:56:26 2015 +0930
01917d
01917d
    Remove ppc860, ppc750cl, ppc7450 insns from common ppc.
01917d
    
01917d
    Back in the day support for these processors was added, we probably
01917d
    didn't want to waste PPC_OPCODE bits on minor variations.  I've had a
01917d
    complaint that disassembly of mfspr/mtspr was wrong for power8.  This
01917d
    patch fixes that problem.
01917d
    
01917d
    Note that since -m860/-m850/-m821 are new gas options enabling the
01917d
    mpc8xx specific mfspr/mtspr variants it is possible that this change
01917d
    will break some mpc8xx assembly code.  ie. you might need to modify
01917d
    makefiles to pass -m860 to gas.
01917d
    
01917d
    include/opcode/
01917d
            * ppc.h (PPC_OPCODE_750, PPC_OPCODE_7450, PPC_OPCODE_860): Define.
01917d
    opcodes/
01917d
            * ppc-opc.c (PPC750, PPC7450, PPC860): Define using PPC_OPCODE_*.
01917d
            * ppc-dis.c (ppc_opts): Add 821, 850 and 860 entries.  Add
01917d
            PPC_OPCODE_7450 to 7450 entry.  Add PPC_OPCODE_750 to 750cl entry.
01917d
    gas/
01917d
            * config/tc-ppc.c (md_show_usage): Add -m821, -m850, -m860.
01917d
            * doc/c-ppc.texi (PowerPC-Opts): Likewise.
01917d
    gas/testsuite/
01917d
            * gas/ppc/titan.d: Correct mfmcsrr0 disassembly.
01917d
01917d
### a/include/opcode/ChangeLog
01917d
### b/include/opcode/ChangeLog
01917d
## -1,3 +1,7 @@
01917d
+2015-07-03  Alan Modra  <amodra@gmail.com>
01917d
+
01917d
+	* ppc.h (PPC_OPCODE_750, PPC_OPCODE_7450, PPC_OPCODE_860): Define.
01917d
+
01917d
 2015-07-01  Sandra Loosemore  <sandra@codesourcery.com>
01917d
 	    Cesar Philippidis  <cesar@codesourcery.com>
01917d
 
01917d
--- a/include/opcode/ppc.h
01917d
+++ b/include/opcode/ppc.h
01917d
@@ -195,6 +195,15 @@ extern const int vle_num_opcodes;
01917d
    that isn't a superset of POWER8, we can define this to its own mask.  */
01917d
 #define PPC_OPCODE_HTM        PPC_OPCODE_POWER8
01917d
 
01917d
+/* Opcode is supported by ppc750cl.  */
01917d
+#define PPC_OPCODE_750	      0x4000000000ull
01917d
+
01917d
+/* Opcode is supported by ppc7450.  */
01917d
+#define PPC_OPCODE_7450	      0x8000000000ull
01917d
+
01917d
+/* Opcode is supported by ppc821/850/860.  */
01917d
+#define PPC_OPCODE_860	      0x10000000000ull
01917d
+
01917d
 /* A macro to extract the major opcode from an instruction.  */
01917d
 #define PPC_OP(i) (((i) >> 26) & 0x3f)
01917d
 
01917d
### a/opcodes/ChangeLog
01917d
### b/opcodes/ChangeLog
01917d
## -1,3 +1,9 @@
01917d
+2015-07-03  Alan Modra  <amodra@gmail.com>
01917d
+
01917d
+	* ppc-opc.c (PPC750, PPC7450, PPC860): Define using PPC_OPCODE_*.
01917d
+	* ppc-dis.c (ppc_opts): Add 821, 850 and 860 entries.  Add
01917d
+	PPC_OPCODE_7450 to 7450 entry.  Add PPC_OPCODE_750 to 750cl entry.
01917d
+
01917d
 2015-07-01  Sandra Loosemore  <sandra@codesourcery.com>
01917d
 	    Cesar Philippidis  <cesar@codesourcery.com>
01917d
 
01917d
--- a/opcodes/ppc-dis.c
01917d
+++ b/opcodes/ppc-dis.c
01917d
@@ -76,12 +76,18 @@ struct ppc_mopt ppc_opts[] = {
01917d
     0 },
01917d
   { "7410",    (PPC_OPCODE_PPC | PPC_OPCODE_ALTIVEC),
01917d
     0 },
01917d
-  { "7450",    (PPC_OPCODE_PPC | PPC_OPCODE_ALTIVEC),
01917d
+  { "7450",    (PPC_OPCODE_PPC | PPC_OPCODE_7450 | PPC_OPCODE_ALTIVEC),
01917d
     0 },
01917d
   { "7455",    (PPC_OPCODE_PPC | PPC_OPCODE_ALTIVEC),
01917d
     0 },
01917d
-  { "750cl",   (PPC_OPCODE_PPC | PPC_OPCODE_PPCPS)
01917d
+  { "750cl",   (PPC_OPCODE_PPC | PPC_OPCODE_750 | PPC_OPCODE_PPCPS)
01917d
     , 0 },
01917d
+  { "821",     (PPC_OPCODE_PPC | PPC_OPCODE_860),
01917d
+    0 },
01917d
+  { "850",     (PPC_OPCODE_PPC | PPC_OPCODE_860),
01917d
+    0 },
01917d
+  { "860",     (PPC_OPCODE_PPC | PPC_OPCODE_860),
01917d
+    0 },
01917d
   { "a2",      (PPC_OPCODE_PPC | PPC_OPCODE_ISEL | PPC_OPCODE_POWER4
01917d
 		| PPC_OPCODE_POWER5 | PPC_OPCODE_CACHELCK | PPC_OPCODE_64
01917d
 		| PPC_OPCODE_A2),
01917d
--- a/opcodes/ppc-opc.c
01917d
+++ b/opcodes/ppc-opc.c
01917d
@@ -2747,9 +2747,9 @@ extract_vleil (unsigned long insn,
01917d
 #define PPC440	PPC_OPCODE_440
01917d
 #define PPC464	PPC440
01917d
 #define PPC476	PPC_OPCODE_476
01917d
-#define PPC750	PPC
01917d
-#define PPC7450 PPC
01917d
-#define PPC860	PPC
01917d
+#define PPC750	PPC_OPCODE_750
01917d
+#define PPC7450 PPC_OPCODE_7450
01917d
+#define PPC860	PPC_OPCODE_860
01917d
 #define PPCPS	PPC_OPCODE_PPCPS
01917d
 #define PPCVEC	PPC_OPCODE_ALTIVEC
01917d
 #define PPCVEC2	PPC_OPCODE_ALTIVEC2