|
|
a094f6 |
commit db76a70026ab100148eb274322fac01f1a1dd466
|
|
|
a094f6 |
Author: Alan Modra <amodra@gmail.com>
|
|
|
a094f6 |
Date: Sat Nov 29 19:13:17 2014 +1030
|
|
|
a094f6 |
|
|
|
a094f6 |
Power4 should treat mftb as extended mfspr mnemonic
|
|
|
a094f6 |
|
|
|
a094f6 |
On further reading of ISA manual it appears gas should have been
|
|
|
a094f6 |
treating mftb and mftbu as extended mnemonics for mfspr, for ISA 2.03
|
|
|
a094f6 |
and later.
|
|
|
a094f6 |
|
|
|
a094f6 |
opcodes/
|
|
|
a094f6 |
* ppc-opc.c (powerpc_opcodes): Make mftb* generate mfspr for
|
|
|
a094f6 |
power4 and later.
|
|
|
a094f6 |
gas/testsuite/
|
|
|
a094f6 |
* gas/ppc/a2.d: Update for mftb change.
|
|
|
a094f6 |
* gas/ppc/476.d: Likewise.
|
|
|
a094f6 |
|
|
|
a094f6 |
### a/opcodes/ChangeLog
|
|
|
a094f6 |
### b/opcodes/ChangeLog
|
|
|
a094f6 |
## -1,3 +1,8 @@
|
|
|
a094f6 |
+2014-11-30 Alan Modra <amodra@gmail.com>
|
|
|
a094f6 |
+
|
|
|
a094f6 |
+ * ppc-opc.c (powerpc_opcodes): Make mftb* generate mfspr for
|
|
|
a094f6 |
+ power4 and later.
|
|
|
a094f6 |
+
|
|
|
a094f6 |
2014-11-28 Sandra Loosemore <sandra@codesourcery.com>
|
|
|
a094f6 |
|
|
|
a094f6 |
* nios2-opc.c (nios2_r1_opcodes): Remove deleted attributes
|
|
|
a094f6 |
--- a/opcodes/ppc-opc.c
|
|
|
a094f6 |
+++ b/opcodes/ppc-opc.c
|
|
|
a094f6 |
@@ -4880,9 +4880,9 @@ const struct powerpc_opcode powerpc_opcodes[] = {
|
|
|
a094f6 |
{"mfsprg5", XSPR(31,339,261), XSPR_MASK, PPC405|BOOKE|PPCVLE, PPCNONE, {RT}},
|
|
|
a094f6 |
{"mfsprg6", XSPR(31,339,262), XSPR_MASK, PPC405|BOOKE|PPCVLE, PPCNONE, {RT}},
|
|
|
a094f6 |
{"mfsprg7", XSPR(31,339,263), XSPR_MASK, PPC405|BOOKE|PPCVLE, PPCNONE, {RT}},
|
|
|
a094f6 |
-{"mftb", XSPR(31,339,268), XSPR_MASK, BOOKE|PPCVLE, PPCNONE, {RT}},
|
|
|
a094f6 |
-{"mftbl", XSPR(31,339,268), XSPR_MASK, BOOKE|PPCVLE, PPCNONE, {RT}},
|
|
|
a094f6 |
-{"mftbu", XSPR(31,339,269), XSPR_MASK, BOOKE|PPCVLE, PPCNONE, {RT}},
|
|
|
a094f6 |
+{"mftbu", XSPR(31,339,269), XSPR_MASK, POWER4|BOOKE|PPCVLE, PPCNONE, {RT}},
|
|
|
a094f6 |
+{"mftb", X(31,339), X_MASK, POWER4|BOOKE|PPCVLE, PPCNONE, {RT, TBR}},
|
|
|
a094f6 |
+{"mftbl", XSPR(31,339,268), XSPR_MASK, POWER4|BOOKE|PPCVLE, PPCNONE, {RT}},
|
|
|
a094f6 |
{"mfsprg0", XSPR(31,339,272), XSPR_MASK, PPC|PPCVLE, PPCNONE, {RT}},
|
|
|
a094f6 |
{"mfsprg1", XSPR(31,339,273), XSPR_MASK, PPC|PPCVLE, PPCNONE, {RT}},
|
|
|
a094f6 |
{"mfsprg2", XSPR(31,339,274), XSPR_MASK, PPC|PPCVLE, PPCNONE, {RT}},
|
|
|
a094f6 |
@@ -5051,9 +5051,9 @@ const struct powerpc_opcode powerpc_opcodes[] = {
|
|
|
a094f6 |
|
|
|
a094f6 |
{"tlbia", X(31,370), 0xffffffff, PPC, TITAN, {0}},
|
|
|
a094f6 |
|
|
|
a094f6 |
-{"mftbl", XSPR(31,371,268), XSPR_MASK, PPC, NO371, {RT}},
|
|
|
a094f6 |
-{"mftbu", XSPR(31,371,269), XSPR_MASK, PPC, NO371, {RT}},
|
|
|
a094f6 |
-{"mftb", X(31,371), X_MASK, PPC|PPCA2, NO371, {RT, TBR}},
|
|
|
a094f6 |
+{"mftbu", XSPR(31,371,269), XSPR_MASK, PPC, NO371|POWER4, {RT}},
|
|
|
a094f6 |
+{"mftb", X(31,371), X_MASK, PPC, NO371|POWER4, {RT, TBR}},
|
|
|
a094f6 |
+{"mftbl", XSPR(31,371,268), XSPR_MASK, PPC, NO371|POWER4, {RT}},
|
|
|
a094f6 |
|
|
|
a094f6 |
{"lwaux", X(31,373), X_MASK, PPC64|PPCVLE, PPCNONE, {RT, RAL, RB}},
|
|
|
a094f6 |
|