From a08f0c757380a9ebc0d9d47d8c0741f466aadd3e Mon Sep 17 00:00:00 2001 From: Peter Bergner Date: Tue, 9 Sep 2008 13:25:05 +0000 Subject: [PATCH] gas/ * config/tc-ppc.c (ppc_setup_opcodes): Simplify POWER4/NOPOWER4 test. Remove POWER5 and POWER6 tests. gas/testsuite/ * 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. --- gas/ChangeLog | 5 + gas/config/tc-ppc.c | 11 +- gas/testsuite/ChangeLog | 10 ++ gas/testsuite/gas/ppc/common.d | 190 ++++++++++++++++++++++++++++++ gas/testsuite/gas/ppc/common.s | 182 ++++++++++++++++++++++++++++ gas/testsuite/gas/ppc/power4_32.d | 43 +++++++ gas/testsuite/gas/ppc/power4_32.s | 36 ++++++ gas/testsuite/gas/ppc/power6.d | 25 +++- gas/testsuite/gas/ppc/power6.s | 24 ++++ gas/testsuite/gas/ppc/ppc.exp | 2 + 10 files changed, 518 insertions(+), 10 deletions(-) create mode 100644 gas/testsuite/gas/ppc/common.d create mode 100644 gas/testsuite/gas/ppc/common.s create mode 100644 gas/testsuite/gas/ppc/power4_32.d create mode 100644 gas/testsuite/gas/ppc/power4_32.s diff --git a/gas/ChangeLog b/gas/ChangeLog index dea89aa70b..81235a34d0 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2008-09-09 Peter Bergner + + * config/tc-ppc.c (ppc_setup_opcodes): Simplify POWER4/NOPOWER4 test. + Remove POWER5 and POWER6 tests. + 2008-09-08 John David Anglin * config/tc-hppa.c (hppa_regname_to_dw2regnum): Add register name to diff --git a/gas/config/tc-ppc.c b/gas/config/tc-ppc.c index 76a9e8ec4d..648ed725d3 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 ca84798121..9e2791c66f 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,13 @@ +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. + 2008-09-06 Richard Sandiford * gas/mips/cfi-n64-1.s, gas/mips/cfi-n64-1.d: New test. diff --git a/gas/testsuite/gas/ppc/common.d b/gas/testsuite/gas/ppc/common.d new file mode 100644 index 0000000000..d5f325784b --- /dev/null +++ b/gas/testsuite/gas/ppc/common.d @@ -0,0 +1,190 @@ +#objdump: -d -Mcom +#as: -a32 -mcom +#name: PowerPC COMMON instructions + +.*: +file format elf32-powerpc.* + +Disassembly of section \.text: + +0+00 : + + 0: 7c 83 28 39 and. r3,r4,r5 + 4: 7c 83 28 38 and r3,r4,r5 + 8: 7d cd 78 78 andc r13,r14,r15 + c: 7e 30 90 79 andc. r16,r17,r18 + 10: 48 00 00 02 ba 0 + 14: 40 01 00 00 bdnzf- gt,14 + 18: 40 85 00 02 blea- cr1,0 + 1c: 40 43 00 01 bdzfl- so,1c + 20: 41 47 00 03 bdztla- 4\*cr1\+so,0 + 24: 4e 80 04 20 bctr + 28: 4e 80 04 21 bctrl + 2c: 42 40 00 02 bdza- 0 + 30: 42 40 00 00 bdz- 30 + 34: 42 40 00 03 bdzla- 0 + 38: 42 40 00 01 bdzl- 38 + 3c: 41 82 00 00 beq- 3c + 40: 41 8a 00 02 beqa- cr2,0 + 44: 41 86 00 01 beql- cr1,44 + 48: 41 8e 00 03 beqla- cr3,0 + 4c: 40 80 00 00 bge- 4c + 50: 40 90 00 02 bgea- cr4,0 + 54: 40 88 00 01 bgel- cr2,54 + 58: 40 98 00 03 bgela- cr6,0 + 5c: 41 91 00 00 bgt- cr4,5c + 60: 41 99 00 02 bgta- cr6,0 + 64: 41 95 00 01 bgtl- cr5,64 + 68: 41 9d 00 03 bgtla- cr7,0 + 6c: 48 00 00 00 b 6c + 70: 48 00 00 03 bla 0 + 74: 40 81 00 00 ble- 74 + 78: 40 91 00 02 blea- cr4,0 + 7c: 40 89 00 01 blel- cr2,7c + 80: 40 99 00 03 blela- cr6,0 + 84: 48 00 00 01 bl 84 + 88: 41 80 00 00 blt- 88 + 8c: 41 88 00 02 blta- cr2,0 + 90: 41 84 00 01 bltl- cr1,90 + 94: 41 8c 00 03 bltla- cr3,0 + 98: 40 82 00 00 bne- 98 + 9c: 40 8a 00 02 bnea- cr2,0 + a0: 40 86 00 01 bnel- cr1,a0 + a4: 40 8e 00 03 bnela- cr3,0 + a8: 40 85 00 00 ble- cr1,a8 + ac: 40 95 00 02 blea- cr5,0 + b0: 40 8d 00 01 blel- cr3,b0 + b4: 40 9d 00 03 blela- cr7,0 + b8: 40 84 00 00 bge- cr1,b8 + bc: 40 94 00 02 bgea- cr5,0 + c0: 40 8c 00 01 bgel- cr3,c0 + c4: 40 9c 00 03 bgela- cr7,0 + c8: 40 93 00 00 bns- cr4,c8 + cc: 40 9b 00 02 bnsa- cr6,0 + d0: 40 97 00 01 bnsl- cr5,d0 + d4: 40 9f 00 03 bnsla- cr7,0 + d8: 41 93 00 00 bso- cr4,d8 + dc: 41 9b 00 02 bsoa- cr6,0 + e0: 41 97 00 01 bsol- cr5,e0 + e4: 41 9f 00 03 bsola- cr7,0 + e8: 4c 85 32 02 crand 4\*cr1\+lt,4\*cr1\+gt,4\*cr1\+eq + ec: 4c 64 29 02 crandc so,4\*cr1\+lt,4\*cr1\+gt + f0: 4c e0 0a 42 creqv 4\*cr1\+so,lt,gt + f4: 4c 22 19 c2 crnand gt,eq,so + f8: 4c 01 10 42 crnor lt,gt,eq + fc: 4c a6 3b 82 cror 4\*cr1\+gt,4\*cr1\+eq,4\*cr1\+so + 100: 4c 43 23 42 crorc eq,so,4\*cr1\+lt + 104: 4c c7 01 82 crxor 4\*cr1\+eq,4\*cr1\+so,lt + 108: 7d 6a 62 39 eqv. r10,r11,r12 + 10c: 7d 6a 62 38 eqv r10,r11,r12 + 110: fe a0 fa 11 fabs. f21,f31 + 114: fe a0 fa 10 fabs f21,f31 + 118: fd 8a 58 40 fcmpo cr3,f10,f11 + 11c: fd 84 28 00 fcmpu cr3,f4,f5 + 120: fc 60 20 91 fmr. f3,f4 + 124: fc 60 20 90 fmr f3,f4 + 128: fe 80 f1 11 fnabs. f20,f30 + 12c: fe 80 f1 10 fnabs f20,f30 + 130: fc 60 20 51 fneg. f3,f4 + 134: fc 60 20 50 fneg f3,f4 + 138: fc c0 38 18 frsp f6,f7 + 13c: fd 00 48 19 frsp. f8,f9 + 140: 89 21 00 00 lbz r9,0\(r1\) + 144: 8d 41 00 01 lbzu r10,1\(r1\) + 148: 7e 95 b0 ee lbzux r20,r21,r22 + 14c: 7c 64 28 ae lbzx r3,r4,r5 + 150: ca a1 00 08 lfd f21,8\(r1\) + 154: ce c1 00 10 lfdu f22,16\(r1\) + 158: 7e 95 b4 ee lfdux f20,r21,r22 + 15c: 7d ae 7c ae lfdx f13,r14,r15 + 160: c2 61 00 00 lfs f19,0\(r1\) + 164: c6 81 00 04 lfsu f20,4\(r1\) + 168: 7d 4b 64 6e lfsux f10,r11,r12 + 16c: 7d 4b 64 2e lfsx f10,r11,r12 + 170: a9 e1 00 06 lha r15,6\(r1\) + 174: ae 01 00 08 lhau r16,8\(r1\) + 178: 7d 2a 5a ee lhaux r9,r10,r11 + 17c: 7d 2a 5a ae lhax r9,r10,r11 + 180: 7c 64 2e 2c lhbrx r3,r4,r5 + 184: a1 a1 00 00 lhz r13,0\(r1\) + 188: a5 c1 00 02 lhzu r14,2\(r1\) + 18c: 7e 96 c2 6e lhzux r20,r22,r24 + 190: 7e f8 ca 2e lhzx r23,r24,r25 + 194: 4c 04 00 00 mcrf cr0,cr1 + 198: fd 90 00 80 mcrfs cr3,cr4 + 19c: 7d 80 04 00 mcrxr cr3 + 1a0: 7c 60 00 26 mfcr r3 + 1a4: 7c 69 02 a6 mfctr r3 + 1a8: 7c b3 02 a6 mfdar r5 + 1ac: 7c 92 02 a6 mfdsisr r4 + 1b0: ff c0 04 8e mffs f30 + 1b4: ff e0 04 8f mffs. f31 + 1b8: 7c 48 02 a6 mflr r2 + 1bc: 7e 60 00 a6 mfmsr r19 + 1c0: 7c 78 00 26 mfocrf r3,128 + 1c4: 7c 25 02 a6 mfrtcl r1 + 1c8: 7c 04 02 a6 mfrtcu r0 + 1cc: 7c d9 02 a6 mfsdr1 r6 + 1d0: 7c 60 22 a6 mfspr r3,128 + 1d4: 7c fa 02 a6 mfsrr0 r7 + 1d8: 7d 1b 02 a6 mfsrr1 r8 + 1dc: 7f c1 02 a6 mfxer r30 + 1e0: 7f fe fb 79 mr. r30,r31 + 1e4: 7f fe fb 78 mr r30,r31 + 1e8: 7c 6f f1 20 mtcr r3 + 1ec: 7c 68 01 20 mtcrf 128,r3 + 1f0: 7e 69 03 a6 mtctr r19 + 1f4: 7e b3 03 a6 mtdar r21 + 1f8: 7f 16 03 a6 mtdec r24 + 1fc: 7e 92 03 a6 mtdsisr r20 + 200: fc 60 00 8d mtfsb0. so + 204: fc 60 00 8c mtfsb0 so + 208: fc 60 00 4d mtfsb1. so + 20c: fc 60 00 4c mtfsb1 so + 210: fc 0c 55 8e mtfsf 6,f10 + 214: fc 0c 5d 8f mtfsf. 6,f11 + 218: ff 00 01 0c mtfsfi 6,0 + 21c: ff 00 f1 0d mtfsfi. 6,15 + 220: 7e 48 03 a6 mtlr r18 + 224: 7d 40 01 24 mtmsr r10 + 228: 7c 78 01 20 mtocrf 128,r3 + 22c: 7e f5 03 a6 mtrtcl r23 + 230: 7e d4 03 a6 mtrtcu r22 + 234: 7f 39 03 a6 mtsdr1 r25 + 238: 7c 60 23 a6 mtspr 128,r3 + 23c: 7f 5a 03 a6 mtsrr0 r26 + 240: 7f 7b 03 a6 mtsrr1 r27 + 244: 7e 21 03 a6 mtxer r17 + 248: 7f bc f3 b9 nand. r28,r29,r30 + 24c: 7f bc f3 b8 nand r28,r29,r30 + 250: 7c 64 00 d1 neg. r3,r4 + 254: 7c 64 00 d0 neg r3,r4 + 258: 7e 11 04 d0 nego r16,r17 + 25c: 7e 53 04 d1 nego. r18,r19 + 260: 7e b4 b0 f9 nor. r20,r21,r22 + 264: 7e b4 b0 f8 nor r20,r21,r22 + 268: 7e b4 a8 f9 not. r20,r21 + 26c: 7e b4 a8 f8 not r20,r21 + 270: 7c 40 23 78 or r0,r2,r4 + 274: 7d cc 83 79 or. r12,r14,r16 + 278: 7e 0f 8b 38 orc r15,r16,r17 + 27c: 7e 72 a3 39 orc. r18,r19,r20 + 280: 4c 00 00 64 rfi + 284: 99 61 00 02 stb r11,2\(r1\) + 288: 9d 81 00 03 stbu r12,3\(r1\) + 28c: 7d ae 79 ee stbux r13,r14,r15 + 290: 7c 64 29 ae stbx r3,r4,r5 + 294: db 21 00 20 stfd f25,32\(r1\) + 298: df 41 00 28 stfdu f26,40\(r1\) + 29c: 7c 01 15 ee stfdux f0,r1,r2 + 2a0: 7f be fd ae stfdx f29,r30,r31 + 2a4: d2 e1 00 14 stfs f23,20\(r1\) + 2a8: d7 01 00 18 stfsu f24,24\(r1\) + 2ac: 7f 5b e5 6e stfsux f26,r27,r28 + 2b0: 7e f8 cd 2e stfsx f23,r24,r25 + 2b4: b2 21 00 0a sth r17,10\(r1\) + 2b8: 7c c7 47 2c sthbrx r6,r7,r8 + 2bc: b6 41 00 0c sthu r18,12\(r1\) + 2c0: 7e b6 bb 6e sthux r21,r22,r23 + 2c4: 7d 8d 73 2e sthx r12,r13,r14 + 2c8: 7f dd fa 79 xor. r29,r30,r31 + 2cc: 7f dd fa 78 xor r29,r30,r31 diff --git a/gas/testsuite/gas/ppc/common.s b/gas/testsuite/gas/ppc/common.s new file mode 100644 index 0000000000..d079cb2fef --- /dev/null +++ b/gas/testsuite/gas/ppc/common.s @@ -0,0 +1,182 @@ + .section ".text" +start: + and. 3,4,5 + and 3,4,5 + andc 13,14,15 + andc. 16,17,18 + ba label_abs + bc 0,1,foo + bca 4,5,foo_abs + bcl 2,3,foo + bcla 10,7,foo_abs + bctr + bctrl + bdza foo_abs + bdz foo + bdzla foo_abs + bdzl foo + beq 0,foo + beqa 2,foo_abs + beql 1,foo + beqla 3,foo_abs + bge 0,foo + bgea 4,foo_abs + bgel 2,foo + bgela 6,foo_abs + bgt 4,foo + bgta 6,foo_abs + bgtl 5,foo + bgtla 7,foo_abs + b label + bla label_abs + ble 0,foo + blea 4,foo + blel 2,foo + blela 6,foo_abs + bl label + blt 0,foo + blta 2,foo_abs + bltl 1,foo + bltla 3,foo_abs + bne 0,foo + bnea 2,foo + bnel 1,foo + bnela 3,foo_abs + bng 1,foo + bnga 5,foo_abs + bngl 3,foo + bngla 7,foo_abs + bnl 1,foo + bnla 5,foo_abs + bnll 3,foo + bnlla 7,foo_abs + bns 4,foo + bnsa 6,foo_abs + bnsl 5,foo + bnsla 7,foo_abs + bso 4,foo + bsoa 6,foo_abs + bsol 5,foo + bsola 7,foo_abs + crand 4,5,6 + crandc 3,4,5 + creqv 7,0,1 + crnand 1,2,3 + crnor 0,1,2 + cror 5,6,7 + crorc 2,3,4 + crxor 6,7,0 + eqv. 10,11,12 + eqv 10,11,12 + fabs. 21,31 + fabs 21,31 + fcmpo 3,10,11 + fcmpu 3,4,5 + fmr. 3,4 + fmr 3,4 + fnabs. 20,30 + fnabs 20,30 + fneg. 3,4 + fneg 3,4 + frsp 6,7 + frsp. 8,9 + lbz 9,0(1) + lbzu 10,1(1) + lbzux 20,21,22 + lbzx 3,4,5 + lfd 21,8(1) + lfdu 22,16(1) + lfdux 20,21,22 + lfdx 13,14,15 + lfs 19,0(1) + lfsu 20,4(1) + lfsux 10,11,12 + lfsx 10,11,12 + lha 15,6(1) + lhau 16,8(1) + lhaux 9,10,11 + lhax 9,10,11 + lhbrx 3,4,5 + lhz 13,0(1) + lhzu 14,2(1) + lhzux 20,22,24 + lhzx 23,24,25 + mcrf 0,1 + mcrfs 3,4 + mcrxr 3 + mfcr 3 + mfctr 3 + mfdar 5 + mfdsisr 4 + mffs 30 + mffs. 31 + mflr 2 + mfmsr 19 + mfocrf 3,0x80 + mfrtcl 1 + mfrtcu 0 + mfsdr1 6 + mfspr 3,0x80 + mfsrr0 7 + mfsrr1 8 + mfxer 30 + mr. 30,31 + mr 30,31 + mtcr 3 + mtcrf 0x80,3 + mtctr 19 + mtdar 21 + mtdec 24 + mtdsisr 20 + mtfsb0. 3 + mtfsb0 3 + mtfsb1. 3 + mtfsb1 3 + mtfsf 6,10 + mtfsf. 6,11 + mtfsfi 6,0 + mtfsfi. 6,15 + mtlr 18 + mtmsr 10 + mtocrf 0x80,3 + mtrtcl 23 + mtrtcu 22 + mtsdr1 25 + mtspr 0x80,3 + mtsrr0 26 + mtsrr1 27 + mtxer 17 + nand. 28,29,30 + nand 28,29,30 + neg. 3,4 + neg 3,4 + nego 16,17 + nego. 18,19 + nor. 20,21,22 + nor 20,21,22 + not. 20,21 + not 20,21 + or 0,2,4 + or. 12,14,16 + orc 15,16,17 + orc. 18,19,20 + rfi + stb 11,2(1) + stbu 12,3(1) + stbux 13,14,15 + stbx 3,4,5 + stfd 25,32(1) + stfdu 26,40(1) + stfdux 0,1,2 + stfdx 29,30,31 + stfs 23,20(1) + stfsu 24,24(1) + stfsux 26,27,28 + stfsx 23,24,25 + sth 17,10(1) + sthbrx 6,7,8 + sthu 18,12(1) + sthux 21,22,23 + sthx 12,13,14 + xor. 29,30,31 + xor 29,30,31 diff --git a/gas/testsuite/gas/ppc/power4_32.d b/gas/testsuite/gas/ppc/power4_32.d new file mode 100644 index 0000000000..bd5170fdd3 --- /dev/null +++ b/gas/testsuite/gas/ppc/power4_32.d @@ -0,0 +1,43 @@ +#objdump: -d -Mpower4 +#as: -a32 -mpower4 +#name: Power4 instructions + +.*: +file format elf32-powerpc.* + +Disassembly of section \.text: + +0+00 : + 0: 80 c7 00 00 lwz r6,0\(r7\) + 4: 80 c7 00 10 lwz r6,16\(r7\) + 8: 80 c7 ff f0 lwz r6,-16\(r7\) + c: 80 c7 80 00 lwz r6,-32768\(r7\) + 10: 80 c7 7f f0 lwz r6,32752\(r7\) + 14: 90 c7 00 00 stw r6,0\(r7\) + 18: 90 c7 00 10 stw r6,16\(r7\) + 1c: 90 c7 ff f0 stw r6,-16\(r7\) + 20: 90 c7 80 00 stw r6,-32768\(r7\) + 24: 90 c7 7f f0 stw r6,32752\(r7\) + 28: 00 00 02 00 attn + 2c: 7c 6f f1 20 mtcr r3 + 30: 7c 6f f1 20 mtcr r3 + 34: 7c 68 11 20 mtcrf 129,r3 + 38: 7c 70 11 20 mtocrf 1,r3 + 3c: 7c 70 21 20 mtocrf 2,r3 + 40: 7c 70 41 20 mtocrf 4,r3 + 44: 7c 70 81 20 mtocrf 8,r3 + 48: 7c 71 01 20 mtocrf 16,r3 + 4c: 7c 72 01 20 mtocrf 32,r3 + 50: 7c 74 01 20 mtocrf 64,r3 + 54: 7c 78 01 20 mtocrf 128,r3 + 58: 7c 60 00 26 mfcr r3 + 5c: 7c 70 10 26 mfocrf r3,1 + 60: 7c 70 20 26 mfocrf r3,2 + 64: 7c 70 40 26 mfocrf r3,4 + 68: 7c 70 80 26 mfocrf r3,8 + 6c: 7c 71 00 26 mfocrf r3,16 + 70: 7c 72 00 26 mfocrf r3,32 + 74: 7c 74 00 26 mfocrf r3,64 + 78: 7c 78 00 26 mfocrf r3,128 + 7c: 7c 01 17 ec dcbz r1,r2 + 80: 7c 23 27 ec dcbzl r3,r4 + 84: 7c 05 37 ec dcbz r5,r6 diff --git a/gas/testsuite/gas/ppc/power4_32.s b/gas/testsuite/gas/ppc/power4_32.s new file mode 100644 index 0000000000..88861a429d --- /dev/null +++ b/gas/testsuite/gas/ppc/power4_32.s @@ -0,0 +1,36 @@ + .section ".text" +start: + lwz 6,0(7) + lwz 6,16(7) + lwz 6,-16(7) + lwz 6,-32768(7) + lwz 6,32752(7) + stw 6,0(7) + stw 6,16(7) + stw 6,-16(7) + stw 6,-32768(7) + stw 6,32752(7) + 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/power6.d b/gas/testsuite/gas/ppc/power6.d index 2048823065..d35a827c1b 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 30cb7ef9b0..c84488abcf 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 90a5cfff4c..a04431a73c 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" } -- 2.34.1