aboutsummaryrefslogtreecommitdiff
path: root/opcodes
diff options
context:
space:
mode:
authorPeter Bergner <bergner@vnet.ibm.com>2008-06-25 16:49:03 +0000
committerPeter Bergner <bergner@vnet.ibm.com>2008-06-25 16:49:03 +0000
commitc8187e1509b28d4d9c0bbc2de688144ef80537c0 (patch)
tree1f4b9196505755ceb0029faf86a962a3ea563c4c /opcodes
parent3bb06f783c65cdf0fe307d6b740ae3da67d2b67d (diff)
downloadgdb-c8187e1509b28d4d9c0bbc2de688144ef80537c0.zip
gdb-c8187e1509b28d4d9c0bbc2de688144ef80537c0.tar.gz
gdb-c8187e1509b28d4d9c0bbc2de688144ef80537c0.tar.bz2
gas/
* 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.
Diffstat (limited to 'opcodes')
-rw-r--r--opcodes/ChangeLog7
-rw-r--r--opcodes/ppc-dis.c4
-rw-r--r--opcodes/ppc-opc.c5
3 files changed, 15 insertions, 1 deletions
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index 1aa6fa9..ad39ba9 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -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.
diff --git a/opcodes/ppc-dis.c b/opcodes/ppc-dis.c
index de586dc..5a9f707 100644
--- a/opcodes/ppc-dis.c
+++ b/opcodes/ppc-dis.c
@@ -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");
diff --git a/opcodes/ppc-opc.c b/opcodes/ppc-opc.c
index b5f4111..f9c2059 100644
--- a/opcodes/ppc-opc.c
+++ b/opcodes/ppc-opc.c
@@ -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}},