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

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