From: Alan Modra Date: Mon, 2 Mar 2009 13:28:16 +0000 (+0000) Subject: backport 2008-09-09 Peter Bergner X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=859b3bf126f9966de7bc11b4c034c8e04c766190;p=thirdparty%2Fbinutils-gdb.git backport 2008-09-09 Peter Bergner --- diff --git a/gas/ChangeLog b/gas/ChangeLog index 3ca4c44e5ae..659a7f01016 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,9 @@ +2009-03-02 Alan Modra + + 2008-09-09 Peter Bergner + * config/tc-ppc.c (ppc_setup_opcodes): Simplify POWER4/NOPOWER4 test. + Remove POWER5 and POWER6 tests. + 2009-01-14 Jakub Jelinek * Makefile.am (ehopt.o): Add struc-symbol.h. diff --git a/gas/config/tc-ppc.c b/gas/config/tc-ppc.c index 76a9e8ec4d3..648ed725d3e 100644 --- a/gas/config/tc-ppc.c +++ b/gas/config/tc-ppc.c @@ -1428,15 +1428,8 @@ ppc_setup_opcodes (void) && ((op->flags & PPC_OPCODE_BOOKE64) == 0 || (ppc_cpu & PPC_OPCODE_BOOKE64) == PPC_OPCODE_BOOKE64 || (ppc_cpu & PPC_OPCODE_BOOKE) == 0) - && ((op->flags & (PPC_OPCODE_POWER4 | PPC_OPCODE_NOPOWER4)) == 0 - || ((op->flags & PPC_OPCODE_POWER4) - == (ppc_cpu & PPC_OPCODE_POWER4))) - && ((op->flags & PPC_OPCODE_POWER5) == 0 - || ((op->flags & PPC_OPCODE_POWER5) - == (ppc_cpu & PPC_OPCODE_POWER5))) - && ((op->flags & PPC_OPCODE_POWER6) == 0 - || ((op->flags & PPC_OPCODE_POWER6) - == (ppc_cpu & PPC_OPCODE_POWER6)))) + && ((ppc_cpu & PPC_OPCODE_POWER4) == 0 + || (op->flags & PPC_OPCODE_NOPOWER4) == 0)) { const char *retval; diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 68e344f14e5..2193c3d1b93 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,14 @@ +2009-03-02 Alan Modra + + 2008-09-09 Peter Bergner + * gas/ppc/common.s: New test. + * gas/ppc/common.d: Likewise. + * gas/ppc/power4_32.s: Likewise. + * gas/ppc/power4_32.d: Likewise. + * gas/ppc/power6.s: Add attn, mtcr, mtcrf, mfcr, dcbz. + * gas/ppc/power6.d: Likewise. + * gas/ppc/ppc.exp: Run power4_32 test. + 2009-01-08 Adam Nemet * gas/mips/mips1-fp.s, gas/mips/mips1-fp.d, gas/mips/mips1-fp.l: diff --git a/gas/testsuite/gas/ppc/power6.d b/gas/testsuite/gas/ppc/power6.d index 20488230652..d35a827c1b7 100644 --- a/gas/testsuite/gas/ppc/power6.d +++ b/gas/testsuite/gas/ppc/power6.d @@ -28,4 +28,27 @@ Disassembly of section \.text: 48: 7e 08 3a ac dstt r8,r7,0 4c: 7c 65 32 ec dstst r5,r6,3 50: 7e 44 2a ec dststt r4,r5,2 - + 54: 00 00 02 00 attn + 58: 7c 6f f1 20 mtcr r3 + 5c: 7c 6f f1 20 mtcr r3 + 60: 7c 68 11 20 mtcrf 129,r3 + 64: 7c 70 11 20 mtocrf 1,r3 + 68: 7c 70 21 20 mtocrf 2,r3 + 6c: 7c 70 41 20 mtocrf 4,r3 + 70: 7c 70 81 20 mtocrf 8,r3 + 74: 7c 71 01 20 mtocrf 16,r3 + 78: 7c 72 01 20 mtocrf 32,r3 + 7c: 7c 74 01 20 mtocrf 64,r3 + 80: 7c 78 01 20 mtocrf 128,r3 + 84: 7c 60 00 26 mfcr r3 + 88: 7c 70 10 26 mfocrf r3,1 + 8c: 7c 70 20 26 mfocrf r3,2 + 90: 7c 70 40 26 mfocrf r3,4 + 94: 7c 70 80 26 mfocrf r3,8 + 98: 7c 71 00 26 mfocrf r3,16 + 9c: 7c 72 00 26 mfocrf r3,32 + a0: 7c 74 00 26 mfocrf r3,64 + a4: 7c 78 00 26 mfocrf r3,128 + a8: 7c 01 17 ec dcbz r1,r2 + ac: 7c 23 27 ec dcbzl r3,r4 + b0: 7c 05 37 ec dcbz r5,r6 diff --git a/gas/testsuite/gas/ppc/power6.s b/gas/testsuite/gas/ppc/power6.s index 30cb7ef9b09..c84488abcfb 100644 --- a/gas/testsuite/gas/ppc/power6.s +++ b/gas/testsuite/gas/ppc/power6.s @@ -23,3 +23,27 @@ start: dstt 8,7,0 dstst 5,6,3 dststt 4,5,2 + attn + mtcr 3 + mtcrf 0xff,3 + mtcrf 0x81,3 + mtcrf 0x01,3 + mtcrf 0x02,3 + mtcrf 0x04,3 + mtcrf 0x08,3 + mtcrf 0x10,3 + mtcrf 0x20,3 + mtcrf 0x40,3 + mtcrf 0x80,3 + mfcr 3 + mfcr 3,0x01 + mfcr 3,0x02 + mfcr 3,0x04 + mfcr 3,0x08 + mfcr 3,0x10 + mfcr 3,0x20 + mfcr 3,0x40 + mfcr 3,0x80 + dcbz 1, 2 + dcbzl 3, 4 + dcbz 5, 6 diff --git a/gas/testsuite/gas/ppc/ppc.exp b/gas/testsuite/gas/ppc/ppc.exp index 90a5cfff4c2..a04431a73c4 100644 --- a/gas/testsuite/gas/ppc/ppc.exp +++ b/gas/testsuite/gas/ppc/ppc.exp @@ -45,6 +45,8 @@ if { [istarget powerpc*-*-*] } then { run_dump_test "ppc750ps" run_dump_test "e500mc" run_dump_test "cell" + run_dump_test "common" + run_dump_test "power4_32" run_dump_test "power6" run_dump_test "power7" }