gas/
authorPeter Bergner <bergner@vnet.ibm.com>
Wed, 25 Jun 2008 16:49:03 +0000 (16:49 +0000)
committerPeter Bergner <bergner@vnet.ibm.com>
Wed, 25 Jun 2008 16:49:03 +0000 (16:49 +0000)
* config/tc-ppc.c (parse_cpu): Handle -m464.
(md_show_usage): Likewise.

opcodes/
* ppc-dis.c (powerpc_init_dialect): Handle -M464.
(print_ppc_disassembler_options): Likewise.
* ppc-opc.c (PPC464): Define.
(powerpc_opcodes): Add mfdcrux and mtdcrux.

gas/ChangeLog
gas/config/tc-ppc.c
opcodes/ChangeLog
opcodes/ppc-dis.c
opcodes/ppc-opc.c

index 8644c7985bf08ff781a07a5798cd62df1d37e912..27a50dc27e035445d29a135d89bc87f73bd2053c 100644 (file)
@@ -1,3 +1,8 @@
+2008-06-25  Peter Bergner  <bergner@vnet.ibm.com>
+
+       * config/tc-ppc.c (parse_cpu): Handle -m464.
+       (md_show_usage): Likewise.
+
 2008-06-24  Eric B. Weddington  <eric.weddington@atmel.com>
 
        Add support for ATtiny13A.
index 0aec203e5623a0637347940e0f89bdd9da47c634..927ddb67ffc7f8ee30465e742fc00c2b501e6182 100644 (file)
@@ -854,7 +854,8 @@ parse_cpu (const char *arg)
           || strcmp (arg, "405") == 0)
     ppc_cpu = (PPC_OPCODE_PPC | PPC_OPCODE_CLASSIC
               | PPC_OPCODE_403 | PPC_OPCODE_32);
-  else if (strcmp (arg, "440") == 0)
+  else if (strcmp (arg, "440") == 0
+          || strcmp (arg, "464") == 0)
     ppc_cpu = (PPC_OPCODE_PPC | PPC_OPCODE_BOOKE | PPC_OPCODE_32
               | PPC_OPCODE_440 | PPC_OPCODE_ISEL | PPC_OPCODE_RFMCI);
   else if (strcmp (arg, "7400") == 0
@@ -1123,6 +1124,7 @@ PowerPC options:\n\
                        generate code for PowerPC 603/604\n\
 -m403, -m405           generate code for PowerPC 403/405\n\
 -m440                  generate code for PowerPC 440\n\
+-m464                  generate code for PowerPC 464\n\
 -m7400, -m7410, -m7450, -m7455\n\
                        generate code for PowerPC 7400/7410/7450/7455\n\
 -m750cl                        generate code for PowerPC 750cl\n"));
index 1aa6fa978dfce81498795c0bd0016a99768a240b..ad39ba9a0b2c162f22f385900078069d83ae6988 100644 (file)
@@ -1,3 +1,10 @@
+2008-06-25  Peter Bergner  <bergner@vnet.ibm.com>
+
+       * ppc-dis.c (powerpc_init_dialect): Handle -M464.
+       (print_ppc_disassembler_options): Likewise.
+       * ppc-opc.c (PPC464): Define.
+       (powerpc_opcodes): Add mfdcrux and mtdcrux.
+
 2008-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
 
        * configure: Regenerate.
index de586dc9ad6786c9b2d2ed36e37998f53c76663c..5a9f70708a3fa5ec335b881e61057c9ef3305da2 100644 (file)
@@ -85,7 +85,8 @@ powerpc_init_dialect (struct disassemble_info *info)
           && strstr (info->disassembler_options, "e300") != NULL)
     dialect |= PPC_OPCODE_E300 | PPC_OPCODE_CLASSIC | PPC_OPCODE_COMMON;
   else if (info->disassembler_options
-          && strstr (info->disassembler_options, "440") != NULL)
+          && (strstr (info->disassembler_options, "440") != NULL
+              || strstr (info->disassembler_options, "464") != NULL))
     dialect |= PPC_OPCODE_BOOKE | PPC_OPCODE_32
       | PPC_OPCODE_440 | PPC_OPCODE_ISEL | PPC_OPCODE_RFMCI;
   else
@@ -388,6 +389,7 @@ the -M switch:\n");
   fprintf (stream, "  e500|e500x2              Disassemble the e500 instructions\n");
   fprintf (stream, "  e500mc                   Disassemble the e500mc instructions\n");
   fprintf (stream, "  440                      Disassemble the 440 instructions\n");
+  fprintf (stream, "  464                      Disassemble the 464 instructions\n");
   fprintf (stream, "  efs                      Disassemble the EFS instructions\n");
   fprintf (stream, "  ppcps                    Disassemble the PowerPC paired singles instructions\n");
   fprintf (stream, "  power4                   Disassemble the Power4 instructions\n");
index b5f41115b7ad07b0cdf7a502f03e6d0ec88a98ce..f9c2059b8ce72c4ab3c6ad7d729c3574721a0987 100644 (file)
@@ -1666,6 +1666,7 @@ extract_tbr (unsigned long insn,
 #define PPC403 PPC_OPCODE_403
 #define PPC405 PPC403
 #define PPC440 PPC_OPCODE_440
+#define PPC464 PPC440
 #define PPC750 PPC
 #define PPC7450 PPC
 #define PPC860 PPC
@@ -3527,6 +3528,8 @@ const struct powerpc_opcode powerpc_opcodes[] = {
 {"lhzxe",      X(31,287),      X_MASK,      BOOKE64,   {RT, RA0, RB}},
 {"lhepx",      X(31,287),      X_MASK,      E500MC,    {RT, RA, RB}},
 
+{"mfdcrux",    X(31,291),      X_MASK,      PPC464,    {RS, RA}},
+
 {"tlbie",      X(31,306),      XRTLRA_MASK, PPC,       {RB, L}},
 {"tlbi",       X(31,306),      XRT_MASK,    POWER,     {RA0, RB}},
 
@@ -3818,6 +3821,8 @@ const struct powerpc_opcode powerpc_opcodes[] = {
 {"sthxe",      X(31,415),      X_MASK,      BOOKE64,   {RS, RA0, RB}},
 {"sthepx",     X(31,415),      X_MASK,      E500MC,    {RS, RA, RB}},
 
+{"mtdcrux",    X(31,419),      X_MASK,      PPC464,    {RA, RS}},
+
 {"slbie",      X(31,434),      XRTRA_MASK,  PPC64,     {RB}},
 
 {"ecowx",      X(31,438),      X_MASK,      PPC,       {RT, RA, RB}},