aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2009-09-08 09:00:47 +0000
committerAlan Modra <amodra@gmail.com>2009-09-08 09:00:47 +0000
commitbdc7fcfe59f1347e78f71ee13b557ff5df8ca5de (patch)
tree54b5ae23568a071ffd606829df90e82f932c8825
parentbad6899a88db7844873826d987b969e7b259060c (diff)
downloadgdb-bdc7fcfe59f1347e78f71ee13b557ff5df8ca5de.zip
gdb-bdc7fcfe59f1347e78f71ee13b557ff5df8ca5de.tar.gz
gdb-bdc7fcfe59f1347e78f71ee13b557ff5df8ca5de.tar.bz2
* ppc-opc.c (powerpc_macros <extrdi>): Allow n+b of 64.
-rw-r--r--opcodes/ChangeLog4
-rw-r--r--opcodes/ppc-opc.c4
2 files changed, 6 insertions, 2 deletions
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index 736cd2f..3b7b405 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,3 +1,7 @@
+2009-09-08 Alan Modra <amodra@bigpond.net.au>
+
+ * ppc-opc.c (powerpc_macros <extrdi>): Allow n+b of 64.
+
2009-09-07 Alan Modra <amodra@bigpond.net.au>
* z8kgen.c (func): Fix thinko last patch.
diff --git a/opcodes/ppc-opc.c b/opcodes/ppc-opc.c
index bc64e49..1a69d33 100644
--- a/opcodes/ppc-opc.c
+++ b/opcodes/ppc-opc.c
@@ -5301,8 +5301,8 @@ const int powerpc_num_opcodes =
const struct powerpc_macro powerpc_macros[] = {
{"extldi", 4, PPC64, "rldicr %0,%1,%3,(%2)-1"},
{"extldi.", 4, PPC64, "rldicr. %0,%1,%3,(%2)-1"},
-{"extrdi", 4, PPC64, "rldicl %0,%1,(%2)+(%3),64-(%2)"},
-{"extrdi.", 4, PPC64, "rldicl. %0,%1,(%2)+(%3),64-(%2)"},
+{"extrdi", 4, PPC64, "rldicl %0,%1,((%2)+(%3))&((%2)+(%3)<>64),64-(%2)"},
+{"extrdi.", 4, PPC64, "rldicl. %0,%1,((%2)+(%3))&((%2)+(%3)<>64),64-(%2)"},
{"insrdi", 4, PPC64, "rldimi %0,%1,64-((%2)+(%3)),%3"},
{"insrdi.", 4, PPC64, "rldimi. %0,%1,64-((%2)+(%3)),%3"},
{"rotrdi", 3, PPC64, "rldicl %0,%1,(-(%2)!63)&((%2)|63),0"},