* ppc-dis.c (print_insn_powerpc): Skip insn if it is deprecated.
	* ppc-opc.c (powerpc_opcodes) <mtfsf, mtfsf.>: Deprecate the two
	operand form and enable the four operand form for POWER6 and later.
	<mtfsfi, mtfsfi.>: Deprecate the two operand form and enable the
	three operand form for POWER6 and later.

gas/testsuite/
	* gas/ppc/power6.s ("mtfsf", "mtfsf.", "mtfsfi", "mtfsfi."): Add tests.
	* gas/ppc/power6.d: Likewise.
This commit is contained in:
Peter Bergner 2009-01-15 04:27:28 +00:00
parent bbbfea06e5
commit 21169fcfad
6 changed files with 51 additions and 5 deletions

View File

@ -1,3 +1,8 @@
2009-01-14 Peter Bergner <bergner@vnet.ibm.com>
* gas/ppc/power6.s ("mtfsf", "mtfsf.", "mtfsfi", "mtfsfi."): Add tests.
* gas/ppc/power6.d: Likewise.
2009-01-12 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/sse-noavx.s: Add tests for lfence, mfence and movnti.

View File

@ -52,3 +52,17 @@ Disassembly of section \.text:
a8: 7c 01 17 ec dcbz r1,r2
ac: 7c 23 27 ec dcbzl r3,r4
b0: 7c 05 37 ec dcbz r5,r6
b4: fc 0c 55 8e mtfsf 6,f10
b8: fc 0c 5d 8f mtfsf. 6,f11
bc: fc 0c 55 8e mtfsf 6,f10
c0: fc 0c 5d 8f mtfsf. 6,f11
c4: fc 0d 55 8e mtfsf 6,f10,0,1
c8: fc 0d 5d 8f mtfsf. 6,f11,0,1
cc: fe 0c 55 8e mtfsf 6,f10,1,0
d0: fe 0c 5d 8f mtfsf. 6,f11,1,0
d4: ff 00 01 0c mtfsfi 6,0
d8: ff 00 f1 0d mtfsfi. 6,15
dc: ff 00 01 0c mtfsfi 6,0
e0: ff 00 f1 0d mtfsfi. 6,15
e4: ff 01 01 0c mtfsfi 6,0,1
e8: ff 01 f1 0d mtfsfi. 6,15,1

View File

@ -47,3 +47,17 @@ start:
dcbz 1, 2
dcbzl 3, 4
dcbz 5, 6
mtfsf 6,10
mtfsf. 6,11
mtfsf 6,10,0,0
mtfsf. 6,11,0,0
mtfsf 6,10,0,1
mtfsf. 6,11,0,1
mtfsf 6,10,1,0
mtfsf. 6,11,1,0
mtfsfi 6,0
mtfsfi. 6,15
mtfsfi 6,0,0
mtfsfi. 6,15,0
mtfsfi 6,0,1
mtfsfi. 6,15,1

View File

@ -1,3 +1,11 @@
2009-01-14 Peter Bergner <bergner@vnet.ibm.com>
* ppc-dis.c (print_insn_powerpc): Skip insn if it is deprecated.
* ppc-opc.c (powerpc_opcodes) <mtfsf, mtfsf.>: Deprecate the two
operand form and enable the four operand form for POWER6 and later.
<mtfsfi, mtfsfi.>: Deprecate the two operand form and enable the
three operand form for POWER6 and later.
2009-01-14 Mike Frysinger <vapier@gentoo.org>
* bfin-dis.c (OUTS): Use "%s" as format string.

View File

@ -266,7 +266,8 @@ print_insn_powerpc (bfd_vma memaddr,
continue;
if ((insn & opcode->mask) != opcode->opcode
|| (opcode->flags & dialect) == 0)
|| (opcode->flags & dialect) == 0
|| (opcode->deprecated & dialect) != 0)
continue;
/* Make two passes over the operands. First see if any of them

View File

@ -4887,8 +4887,10 @@ const struct powerpc_opcode powerpc_opcodes[] = {
{"dcmpoq", X(63,130), X_MASK, POWER6, PPCNONE, {BF, FRA, FRB}},
{"mtfsfi", XRC(63,134,0), XWRA_MASK|(3<<21)|(1<<11), COM, PPCNONE, {BFF, U, W}},
{"mtfsfi.", XRC(63,134,1), XWRA_MASK|(3<<21)|(1<<11), COM, PPCNONE, {BFF, U, W}},
{"mtfsfi", XRC(63,134,0), XRA_MASK|(3<<21)|(1<<11), COM, POWER6, {BFF, U}},
{"mtfsfi", XRC(63,134,0), XWRA_MASK|(3<<21)|(1<<11), POWER6, PPCNONE, {BFF, U, W}},
{"mtfsfi.", XRC(63,134,1), XRA_MASK|(3<<21)|(1<<11), COM, POWER6, {BFF, U}},
{"mtfsfi.", XRC(63,134,1), XWRA_MASK|(3<<21)|(1<<11), POWER6, PPCNONE, {BFF, U, W}},
{"fnabs", XRC(63,136,0), XRA_MASK, COM, PPCNONE, {FRT, FRB}},
{"fnabs.", XRC(63,136,1), XRA_MASK, COM, PPCNONE, {FRT, FRB}},
@ -4937,8 +4939,10 @@ const struct powerpc_opcode powerpc_opcodes[] = {
{"dtstsfq", X(63,674), X_MASK, POWER6, PPCNONE, {BF, FRA, FRB}},
{"mtfsf", XFL(63,711,0), XFL_MASK, COM, PPCNONE, {FLM, FRB, XFL_L, W}},
{"mtfsf.", XFL(63,711,1), XFL_MASK, COM, PPCNONE, {FLM, FRB, XFL_L, W}},
{"mtfsf", XFL(63,711,0), XFL_MASK, COM, POWER6, {FLM, FRB}},
{"mtfsf", XFL(63,711,0), XFL_MASK, POWER6, PPCNONE, {FLM, FRB, XFL_L, W}},
{"mtfsf.", XFL(63,711,1), XFL_MASK, COM, POWER6, {FLM, FRB}},
{"mtfsf.", XFL(63,711,1), XFL_MASK, POWER6, PPCNONE, {FLM, FRB, XFL_L, W}},
{"drdpq", XRC(63,770,0), X_MASK, POWER6, PPCNONE, {FRT, FRB}},
{"drdpq.", XRC(63,770,1), X_MASK, POWER6, PPCNONE, {FRT, FRB}},