This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
[PATCH] A few ppc assembler fixes
- From: Peter Bergner <bergner at vnet dot ibm dot com>
- To: Binutils <binutils at sourceware dot org>
- Cc: Alan Modra <amodra at gmail dot com>, Bill Schmidt <wschmidt at linux dot vnet dot ibm dot com>, Hal Finkel <hfinkel at anl dot gov>
- Date: Wed, 22 Apr 2015 18:52:07 -0500
- Subject: [PATCH] A few ppc assembler fixes
- Authentication-results: sourceware.org; auth=none
This patch cleans up a couple of issues with the assembler/disassembler.
First off is that the lbarx, lharx, stbcx., sthcx instructions were phased-in
in the ISA 2.06, but were not actually implemented until POWER8. In addition,
the waitrsv and waitimpl instructions still haven't been implemented, so
this patch updates their supported "flags" value to reflect reality.
The second part of the patch changes the dcbt and dcbtst to always use
the server operand ordering (like all other instructions) and we only
use the embedded operand ordering when we explicitly are targetting an
embedded processor. This patch actually caught an error in the 476 and
A2 tests, in that they were accidentally picking up the server ordering
when they shouldn't have.
I'll note that the dcbt/dcbtst change was triggered by some questions
from a LLVM developer who was trying to enable support for dcbt/dcbtst
in LLVM's assembler and they were running into issues with the operand
ordering and which one they should use. We decided that they should
default to the server ordering like they and binutils does for all
instructions and only use the embedded ordering when explicitly asked for.
This builds and passes make check, ok for trunk? Do we want this on
the 2.25 branch as well?
Peter
opcodes/
* ppc-opc.c: (powerpc_opcodes) <lbarx>: Enable for POWER8 and later.
<lharx>: Likewise.
<stbcx.>: Likewise.
<sthcx.>: Likewise.
<waitrsv>: Do not enable for POWER7 and later.
<waitimpl>: Likewise.
<dcbt>: Default to the server operand ordering for all non-embedded
targets. Use the embedded ordering only when explicitly asked.
<dcbtst>: Likewise.
gas/testsuite/
* gas/ppc/a2.s: Fixup test case due to dcbt/dcbtst embedded operand
ordering change.
* gas/ppc/a2.d: Likewise.
* gas/ppc/476.d: Likewise.
* gas/ppc/power7.s: Remove lbarx, lharx, stbcx., sthcx., waitrsv
and waitimpl tests.
* gas/ppc/power7.d: Likewise.
diff --git a/opcodes/ppc-opc.c b/opcodes/ppc-opc.c
index 060223f..2df2246 100644
--- a/opcodes/ppc-opc.c
+++ b/opcodes/ppc-opc.c
@@ -4463,7 +4463,7 @@ const struct powerpc_opcode powerpc_opcodes[] = {
{"mfvrd", X(31,51)|1, XX1RB_MASK|1, PPCVSX2, PPCNONE, {RA, VS}},
{"eratilx", X(31,51), X_MASK, PPCA2, PPCNONE, {ERAT_T, RA, RB}},
-{"lbarx", X(31,52), XEH_MASK, POWER7|PPCVLE, PPCNONE, {RT, RA0, RB, EH}},
+{"lbarx", X(31,52), XEH_MASK, POWER8|PPCVLE, PPCNONE, {RT, RA0, RB, EH}},
{"ldux", X(31,53), X_MASK, PPC64|PPCVLE, PPCNONE, {RT, RAL, RB}},
@@ -4478,8 +4478,8 @@ const struct powerpc_opcode powerpc_opcodes[] = {
{"andc", XRC(31,60,0), X_MASK, COM|PPCVLE, PPCNONE, {RA, RS, RB}},
{"andc.", XRC(31,60,1), X_MASK, COM|PPCVLE, PPCNONE, {RA, RS, RB}},
-{"waitrsv", X(31,62)|(1<<21), 0xffffffff, POWER7|E500MC|PPCA2, PPCNONE, {0}},
-{"waitimpl", X(31,62)|(2<<21), 0xffffffff, POWER7|E500MC|PPCA2, PPCNONE, {0}},
+{"waitrsv", X(31,62)|(1<<21), 0xffffffff, E500MC|PPCA2, PPCNONE, {0}},
+{"waitimpl", X(31,62)|(2<<21), 0xffffffff, E500MC|PPCA2, PPCNONE, {0}},
{"wait", X(31,62), XWC_MASK, POWER7|E500MC|PPCA2|PPCVLE, PPCNONE, {WC}},
{"dcbstep", XRT(31,63,0), XRT_MASK, E500MC|PPCA2|PPCVLE, PPCNONE, {RA0, RB}},
@@ -4543,7 +4543,7 @@ const struct powerpc_opcode powerpc_opcodes[] = {
{"mfvrwz", X(31,115)|1, XX1RB_MASK|1, PPCVSX2, PPCNONE, {RA, VS}},
{"mfvsrwz", X(31,115), XX1RB_MASK, PPCVSX2, PPCNONE, {RA, XS6}},
-{"lharx", X(31,116), XEH_MASK, POWER7|PPCVLE, PPCNONE, {RT, RA0, RB, EH}},
+{"lharx", X(31,116), XEH_MASK, POWER8|PPCVLE, PPCNONE, {RT, RA0, RB, EH}},
{"clf", X(31,118), XTO_MASK, POWER, PPCNONE, {RA, RB}},
@@ -4711,9 +4711,9 @@ const struct powerpc_opcode powerpc_opcodes[] = {
{"mtvsrwz", X(31,243), XX1RB_MASK, PPCVSX2, PPCNONE, {XT6, RA}},
{"dcbtstt", XRT(31,246,0x10), XRT_MASK, POWER7, PPCNONE, {RA0, RB}},
-{"dcbtst", X(31,246), X_MASK, POWER4, PPCNONE, {RA0, RB, CT}},
-{"dcbtst", X(31,246), X_MASK, PPC|PPCVLE, POWER4, {CT, RA0, RB}},
-
+{"dcbtst", X(31,246), X_MASK, PPC, BOOKE|PPC476|PPCA2|PPCVLE, {RA0, RB, CT}},
+{"dcbtst", X(31,246), X_MASK, BOOKE|PPC476|PPCA2|PPCVLE, PPCNONE, {CT, RA0, RB}},
+
{"stbux", X(31,247), X_MASK, COM|PPCVLE, PPCNONE, {RS, RAS, RB}},
{"slliq", XRC(31,248,0), X_MASK, M601, PPCNONE, {RA, RS, SH}},
@@ -4753,9 +4753,9 @@ const struct powerpc_opcode powerpc_opcodes[] = {
{"lscbx.", XRC(31,277,1), X_MASK, M601, PPCNONE, {RT, RA, RB}},
{"dcbtt", XRT(31,278,0x10), XRT_MASK, POWER7, PPCNONE, {RA0, RB}},
-{"dcbt", X(31,278), X_MASK, POWER4, PPCNONE, {RA0, RB, CT}},
-{"dcbt", X(31,278), X_MASK, PPC|PPCVLE, POWER4, {CT, RA0, RB}},
-
+{"dcbt", X(31,278), X_MASK, PPC, BOOKE|PPC476|PPCA2|PPCVLE, {RA0, RB, CT}},
+{"dcbt", X(31,278), X_MASK, BOOKE|PPC476|PPCA2|PPCVLE, PPCNONE, {CT, RA0, RB}},
+
{"lhzx", X(31,279), X_MASK, COM|PPCVLE, PPCNONE, {RT, RA0, RB}},
{"cdtbcd", X(31,282), XRB_MASK, POWER6, PPCNONE, {RA, RS}},
@@ -5531,7 +5531,7 @@ const struct powerpc_opcode powerpc_opcodes[] = {
{"tendall.", XRC(31,686,1)|(1<<25), XRTRARB_MASK, PPCHTM, PPCNONE, {0}},
{"tend.", XRC(31,686,1), XRTARARB_MASK, PPCHTM, PPCNONE, {HTM_A}},
-{"stbcx.", XRC(31,694,1), X_MASK, POWER7, PPCNONE, {RS, RA0, RB}},
+{"stbcx.", XRC(31,694,1), X_MASK, POWER8, PPCNONE, {RS, RA0, RB}},
{"stfsux", X(31,695), X_MASK, COM, PPCEFS, {FRS, RAS, RB}},
@@ -5561,7 +5561,7 @@ const struct powerpc_opcode powerpc_opcodes[] = {
{"stswi", X(31,725), X_MASK, PPCCOM|PPCVLE, E500|E500MC, {RS, RA0, NB}},
{"stsi", X(31,725), X_MASK, PWRCOM, PPCNONE, {RS, RA0, NB}},
-{"sthcx.", XRC(31,726,1), X_MASK, POWER7, PPCNONE, {RS, RA0, RB}},
+{"sthcx.", XRC(31,726,1), X_MASK, POWER8, PPCNONE, {RS, RA0, RB}},
{"stfdx", X(31,727), X_MASK, COM, PPCEFS, {FRS, RA0, RB}},
diff --git a/gas/testsuite/gas/ppc/476.d b/gas/testsuite/gas/ppc/476.d
index e59e2e9..253323c 100644
--- a/gas/testsuite/gas/ppc/476.d
+++ b/gas/testsuite/gas/ppc/476.d
@@ -90,13 +90,13 @@ Disassembly of section \.text:
140: (7c 06 3b ac|ac 3b 06 7c) dcbi r6,r7
144: (7c 85 33 0c|0c 33 85 7c) dcblc 4,r5,r6
148: (7c 06 38 6c|6c 38 06 7c) dcbst r6,r7
- 14c: (7c c0 2a 2c|2c 2a c0 7c) dcbt 0,r5,6
+ 14c: (7c 05 32 2c|2c 32 05 7c) dcbt r5,r6
150: (7c 05 32 2c|2c 32 05 7c) dcbt r5,r6
- 154: (7c c8 2a 2c|2c 2a c8 7c) dcbt r8,r5,6
+ 154: (7d 05 32 2c|2c 32 05 7d) dcbt 8,r5,r6
158: (7c e8 49 4c|4c 49 e8 7c) dcbtls 7,r8,r9
- 15c: (7c e0 31 ec|ec 31 e0 7c) dcbtst 0,r6,7
+ 15c: (7c 06 39 ec|ec 39 06 7c) dcbtst r6,r7
160: (7c 06 39 ec|ec 39 06 7c) dcbtst r6,r7
- 164: (7c e9 31 ec|ec 31 e9 7c) dcbtst r9,r6,7
+ 164: (7d 26 39 ec|ec 39 26 7d) dcbtst 9,r6,r7
168: (7d 4b 61 0c|0c 61 4b 7d) dcbtstls 10,r11,r12
16c: (7c 01 17 ec|ec 17 01 7c) dcbz r1,r2
170: (7c 05 37 ec|ec 37 05 7c) dcbz r5,r6
diff --git a/gas/testsuite/gas/ppc/a2.d b/gas/testsuite/gas/ppc/a2.d
index a743402..700c665 100644
--- a/gas/testsuite/gas/ppc/a2.d
+++ b/gas/testsuite/gas/ppc/a2.d
@@ -117,12 +117,12 @@ Disassembly of section \.text:
164: (7c 0a 58 6c|6c 58 0a 7c) dcbst r10,r11
168: (7c 0a 58 7e|7e 58 0a 7c) dcbstep r10,r11
16c: (7c 0a 5a 2c|2c 5a 0a 7c) dcbt r10,r11
- 170: (7c 2a 5a 2c|2c 5a 2a 7c) dcbt r10,r11,1
+ 170: (7c 2a 5a 2c|2c 5a 2a 7c) dcbt 1,r10,r11
174: (7d 4b 62 7e|7e 62 4b 7d) dcbtep r10,r11,r12
178: (7c 0a 59 4c|4c 59 0a 7c) dcbtls r10,r11
17c: (7c 2a 59 4c|4c 59 2a 7c) dcbtls 1,r10,r11
180: (7c 0a 59 ec|ec 59 0a 7c) dcbtst r10,r11
- 184: (7c 2a 59 ec|ec 59 2a 7c) dcbtst r10,r11,1
+ 184: (7c 2a 59 ec|ec 59 2a 7c) dcbtst 1,r10,r11
188: (7d 4b 61 fe|fe 61 4b 7d) dcbtstep r10,r11,r12
18c: (7c 0a 59 0c|0c 59 0a 7c) dcbtstls r10,r11
190: (7c 2a 59 0c|0c 59 2a 7c) dcbtstls 1,r10,r11
diff --git a/gas/testsuite/gas/ppc/a2.s b/gas/testsuite/gas/ppc/a2.s
index bcab185..7d0ddc7 100644
--- a/gas/testsuite/gas/ppc/a2.s
+++ b/gas/testsuite/gas/ppc/a2.s
@@ -91,13 +91,13 @@ start:
dcblc 1,10,11
dcbst 10,11
dcbstep 10,11
- dcbt 10,11,0
- dcbt 10,11,1
+ dcbt 0,10,11
+ dcbt 1,10,11
dcbtep 10,11,12
dcbtls 0,10,11
dcbtls 1,10,11
- dcbtst 10,11,0
- dcbtst 10,11,1
+ dcbtst 0,10,11
+ dcbtst 1,10,11
dcbtstep 10,11,12
dcbtstls 0,10,11
dcbtstls 1,10,11
diff --git a/gas/testsuite/gas/ppc/power7.d b/gas/testsuite/gas/ppc/power7.d
index 602da4b..a247afe 100644
--- a/gas/testsuite/gas/ppc/power7.d
+++ b/gas/testsuite/gas/ppc/power7.d
@@ -31,94 +31,82 @@ Disassembly of section \.text:
54: (f1 6c 6f 87|87 6f 6c f1) xvcpsgndp vs43,vs44,vs45
58: (7c 00 00 7c|7c 00 00 7c) wait
5c: (7c 00 00 7c|7c 00 00 7c) wait
- 60: (7c 20 00 7c|7c 00 20 7c) waitrsv
- 64: (7c 20 00 7c|7c 00 20 7c) waitrsv
- 68: (7c 40 00 7c|7c 00 40 7c) waitimpl
- 6c: (7c 40 00 7c|7c 00 40 7c) waitimpl
- 70: (4c 00 03 24|24 03 00 4c) doze
- 74: (4c 00 03 64|64 03 00 4c) nap
- 78: (4c 00 03 a4|a4 03 00 4c) sleep
- 7c: (4c 00 03 e4|e4 03 00 4c) rvwinkle
- 80: (7c 83 01 34|34 01 83 7c) prtyw r3,r4
- 84: (7d cd 01 74|74 01 cd 7d) prtyd r13,r14
- 88: (7d 5c 02 a6|a6 02 5c 7d) mfcfar r10
- 8c: (7d 7c 03 a6|a6 03 7c 7d) mtcfar r11
- 90: (7c 83 2b f8|f8 2b 83 7c) cmpb r3,r4,r5
- 94: (7d 4b 66 2a|2a 66 4b 7d) lwzcix r10,r11,r12
- 98: (ee 11 90 04|04 90 11 ee) dadd f16,f17,f18
- 9c: (fe 96 c0 04|04 c0 96 fe) daddq f20,f22,f24
- a0: (7c 60 06 6c|6c 06 60 7c) dss 3
- a4: (7e 00 06 6c|6c 06 00 7e) dssall
- a8: (7c 25 22 ac|ac 22 25 7c) dst r5,r4,1
- ac: (7e 08 3a ac|ac 3a 08 7e) dstt r8,r7,0
- b0: (7c 65 32 ec|ec 32 65 7c) dstst r5,r6,3
- b4: (7e 44 2a ec|ec 2a 44 7e) dststt r4,r5,2
- b8: (7d 4b 63 56|56 63 4b 7d) divwe r10,r11,r12
- bc: (7d 6c 6b 57|57 6b 6c 7d) divwe\. r11,r12,r13
- c0: (7d 8d 77 56|56 77 8d 7d) divweo r12,r13,r14
- c4: (7d ae 7f 57|57 7f ae 7d) divweo\. r13,r14,r15
- c8: (7d 4b 63 16|16 63 4b 7d) divweu r10,r11,r12
- cc: (7d 6c 6b 17|17 6b 6c 7d) divweu\. r11,r12,r13
- d0: (7d 8d 77 16|16 77 8d 7d) divweuo r12,r13,r14
- d4: (7d ae 7f 17|17 7f ae 7d) divweuo\. r13,r14,r15
- d8: (7e 27 d9 f8|f8 d9 27 7e) bpermd r7,r17,r27
- dc: (7e 8a 02 f4|f4 02 8a 7e) popcntw r10,r20
- e0: (7e 8a 03 f4|f4 03 8a 7e) popcntd r10,r20
- e4: (7e 95 b4 28|28 b4 95 7e) ldbrx r20,r21,r22
- e8: (7e 95 b5 28|28 b5 95 7e) stdbrx r20,r21,r22
- ec: (7d 40 56 ee|ee 56 40 7d) lfiwzx f10,0,r10
- f0: (7d 49 56 ee|ee 56 49 7d) lfiwzx f10,r9,r10
- f4: (ec 80 2e 9c|9c 2e 80 ec) fcfids f4,f5
- f8: (ec 80 2e 9d|9d 2e 80 ec) fcfids\. f4,f5
- fc: (ec 80 2f 9c|9c 2f 80 ec) fcfidus f4,f5
- 100: (ec 80 2f 9d|9d 2f 80 ec) fcfidus\. f4,f5
- 104: (fc 80 29 1c|1c 29 80 fc) fctiwu f4,f5
- 108: (fc 80 29 1d|1d 29 80 fc) fctiwu\. f4,f5
- 10c: (fc 80 29 1e|1e 29 80 fc) fctiwuz f4,f5
- 110: (fc 80 29 1f|1f 29 80 fc) fctiwuz\. f4,f5
- 114: (fc 80 2f 5c|5c 2f 80 fc) fctidu f4,f5
- 118: (fc 80 2f 5d|5d 2f 80 fc) fctidu\. f4,f5
- 11c: (fc 80 2f 5e|5e 2f 80 fc) fctiduz f4,f5
- 120: (fc 80 2f 5f|5f 2f 80 fc) fctiduz\. f4,f5
- 124: (fc 80 2f 9c|9c 2f 80 fc) fcfidu f4,f5
- 128: (fc 80 2f 9d|9d 2f 80 fc) fcfidu\. f4,f5
- 12c: (fc 0a 59 00|00 59 0a fc) ftdiv cr0,f10,f11
- 130: (ff 8a 59 00|00 59 8a ff) ftdiv cr7,f10,f11
- 134: (fc 00 51 40|40 51 00 fc) ftsqrt cr0,f10
- 138: (ff 80 51 40|40 51 80 ff) ftsqrt cr7,f10
- 13c: (7e 08 4a 2c|2c 4a 08 7e) dcbtt r8,r9
- 140: (7e 08 49 ec|ec 49 08 7e) dcbtstt r8,r9
- 144: (ed 40 66 44|44 66 40 ed) dcffix f10,f12
- 148: (ee 80 b6 45|45 b6 80 ee) dcffix\. f20,f22
- 14c: (7d 4b 60 68|68 60 4b 7d) lbarx r10,r11,r12
- 150: (7d 4b 60 68|68 60 4b 7d) lbarx r10,r11,r12
- 154: (7d 4b 60 69|69 60 4b 7d) lbarx r10,r11,r12,1
- 158: (7e 95 b0 e8|e8 b0 95 7e) lharx r20,r21,r22
- 15c: (7e 95 b0 e8|e8 b0 95 7e) lharx r20,r21,r22
- 160: (7e 95 b0 e9|e9 b0 95 7e) lharx r20,r21,r22,1
- 164: (7d 4b 65 6d|6d 65 4b 7d) stbcx\. r10,r11,r12
- 168: (7d 4b 65 ad|ad 65 4b 7d) sthcx\. r10,r11,r12
- 16c: (fd c0 78 30|30 78 c0 fd) fre f14,f15
- 170: (fd c0 78 31|31 78 c0 fd) fre\. f14,f15
- 174: (ed c0 78 30|30 78 c0 ed) fres f14,f15
- 178: (ed c0 78 31|31 78 c0 ed) fres\. f14,f15
- 17c: (fd c0 78 34|34 78 c0 fd) frsqrte f14,f15
- 180: (fd c0 78 35|35 78 c0 fd) frsqrte\. f14,f15
- 184: (ed c0 78 34|34 78 c0 ed) frsqrtes f14,f15
- 188: (ed c0 78 35|35 78 c0 ed) frsqrtes\. f14,f15
- 18c: (7c 43 27 1e|1e 27 43 7c) isel r2,r3,r4,28
- 190: (60 42 00 00|00 00 42 60) ori r2,r2,0
- 194: (60 00 00 00|00 00 00 60) nop
- 198: (60 00 00 00|00 00 00 60) nop
- 19c: (60 42 00 00|00 00 42 60) ori r2,r2,0
- 1a0: (7f 7b db 78|78 db 7b 7f) yield
- 1a4: (7f 7b db 78|78 db 7b 7f) yield
- 1a8: (7f bd eb 78|78 eb bd 7f) mdoio
- 1ac: (7f bd eb 78|78 eb bd 7f) mdoio
- 1b0: (7f de f3 78|78 f3 de 7f) mdoom
- 1b4: (7f de f3 78|78 f3 de 7f) mdoom
- 1b8: (7d 40 e2 a6|a6 e2 40 7d) mfppr r10
- 1bc: (7d 62 e2 a6|a6 e2 62 7d) mfppr32 r11
- 1c0: (7d 80 e3 a6|a6 e3 80 7d) mtppr r12
- 1c4: (7d a2 e3 a6|a6 e3 a2 7d) mtppr32 r13
+ 60: (4c 00 03 24|24 03 00 4c) doze
+ 64: (4c 00 03 64|64 03 00 4c) nap
+ 68: (4c 00 03 a4|a4 03 00 4c) sleep
+ 6c: (4c 00 03 e4|e4 03 00 4c) rvwinkle
+ 70: (7c 83 01 34|34 01 83 7c) prtyw r3,r4
+ 74: (7d cd 01 74|74 01 cd 7d) prtyd r13,r14
+ 78: (7d 5c 02 a6|a6 02 5c 7d) mfcfar r10
+ 7c: (7d 7c 03 a6|a6 03 7c 7d) mtcfar r11
+ 80: (7c 83 2b f8|f8 2b 83 7c) cmpb r3,r4,r5
+ 84: (7d 4b 66 2a|2a 66 4b 7d) lwzcix r10,r11,r12
+ 88: (ee 11 90 04|04 90 11 ee) dadd f16,f17,f18
+ 8c: (fe 96 c0 04|04 c0 96 fe) daddq f20,f22,f24
+ 90: (7c 60 06 6c|6c 06 60 7c) dss 3
+ 94: (7e 00 06 6c|6c 06 00 7e) dssall
+ 98: (7c 25 22 ac|ac 22 25 7c) dst r5,r4,1
+ 9c: (7e 08 3a ac|ac 3a 08 7e) dstt r8,r7,0
+ a0: (7c 65 32 ec|ec 32 65 7c) dstst r5,r6,3
+ a4: (7e 44 2a ec|ec 2a 44 7e) dststt r4,r5,2
+ a8: (7d 4b 63 56|56 63 4b 7d) divwe r10,r11,r12
+ ac: (7d 6c 6b 57|57 6b 6c 7d) divwe\. r11,r12,r13
+ b0: (7d 8d 77 56|56 77 8d 7d) divweo r12,r13,r14
+ b4: (7d ae 7f 57|57 7f ae 7d) divweo\. r13,r14,r15
+ b8: (7d 4b 63 16|16 63 4b 7d) divweu r10,r11,r12
+ bc: (7d 6c 6b 17|17 6b 6c 7d) divweu\. r11,r12,r13
+ c0: (7d 8d 77 16|16 77 8d 7d) divweuo r12,r13,r14
+ c4: (7d ae 7f 17|17 7f ae 7d) divweuo\. r13,r14,r15
+ c8: (7e 27 d9 f8|f8 d9 27 7e) bpermd r7,r17,r27
+ cc: (7e 8a 02 f4|f4 02 8a 7e) popcntw r10,r20
+ d0: (7e 8a 03 f4|f4 03 8a 7e) popcntd r10,r20
+ d4: (7e 95 b4 28|28 b4 95 7e) ldbrx r20,r21,r22
+ d8: (7e 95 b5 28|28 b5 95 7e) stdbrx r20,r21,r22
+ dc: (7d 40 56 ee|ee 56 40 7d) lfiwzx f10,0,r10
+ e0: (7d 49 56 ee|ee 56 49 7d) lfiwzx f10,r9,r10
+ e4: (ec 80 2e 9c|9c 2e 80 ec) fcfids f4,f5
+ e8: (ec 80 2e 9d|9d 2e 80 ec) fcfids\. f4,f5
+ ec: (ec 80 2f 9c|9c 2f 80 ec) fcfidus f4,f5
+ f0: (ec 80 2f 9d|9d 2f 80 ec) fcfidus\. f4,f5
+ f4: (fc 80 29 1c|1c 29 80 fc) fctiwu f4,f5
+ f8: (fc 80 29 1d|1d 29 80 fc) fctiwu\. f4,f5
+ fc: (fc 80 29 1e|1e 29 80 fc) fctiwuz f4,f5
+ 100: (fc 80 29 1f|1f 29 80 fc) fctiwuz\. f4,f5
+ 104: (fc 80 2f 5c|5c 2f 80 fc) fctidu f4,f5
+ 108: (fc 80 2f 5d|5d 2f 80 fc) fctidu\. f4,f5
+ 10c: (fc 80 2f 5e|5e 2f 80 fc) fctiduz f4,f5
+ 110: (fc 80 2f 5f|5f 2f 80 fc) fctiduz\. f4,f5
+ 114: (fc 80 2f 9c|9c 2f 80 fc) fcfidu f4,f5
+ 118: (fc 80 2f 9d|9d 2f 80 fc) fcfidu\. f4,f5
+ 11c: (fc 0a 59 00|00 59 0a fc) ftdiv cr0,f10,f11
+ 120: (ff 8a 59 00|00 59 8a ff) ftdiv cr7,f10,f11
+ 124: (fc 00 51 40|40 51 00 fc) ftsqrt cr0,f10
+ 128: (ff 80 51 40|40 51 80 ff) ftsqrt cr7,f10
+ 12c: (7e 08 4a 2c|2c 4a 08 7e) dcbtt r8,r9
+ 130: (7e 08 49 ec|ec 49 08 7e) dcbtstt r8,r9
+ 134: (ed 40 66 44|44 66 40 ed) dcffix f10,f12
+ 138: (ee 80 b6 45|45 b6 80 ee) dcffix\. f20,f22
+ 13c: (fd c0 78 30|30 78 c0 fd) fre f14,f15
+ 140: (fd c0 78 31|31 78 c0 fd) fre\. f14,f15
+ 144: (ed c0 78 30|30 78 c0 ed) fres f14,f15
+ 148: (ed c0 78 31|31 78 c0 ed) fres\. f14,f15
+ 14c: (fd c0 78 34|34 78 c0 fd) frsqrte f14,f15
+ 150: (fd c0 78 35|35 78 c0 fd) frsqrte\. f14,f15
+ 154: (ed c0 78 34|34 78 c0 ed) frsqrtes f14,f15
+ 158: (ed c0 78 35|35 78 c0 ed) frsqrtes\. f14,f15
+ 15c: (7c 43 27 1e|1e 27 43 7c) isel r2,r3,r4,28
+ 160: (60 42 00 00|00 00 42 60) ori r2,r2,0
+ 164: (60 00 00 00|00 00 00 60) nop
+ 168: (60 00 00 00|00 00 00 60) nop
+ 16c: (60 42 00 00|00 00 42 60) ori r2,r2,0
+ 170: (7f 7b db 78|78 db 7b 7f) yield
+ 174: (7f 7b db 78|78 db 7b 7f) yield
+ 178: (7f bd eb 78|78 eb bd 7f) mdoio
+ 17c: (7f bd eb 78|78 eb bd 7f) mdoio
+ 180: (7f de f3 78|78 f3 de 7f) mdoom
+ 184: (7f de f3 78|78 f3 de 7f) mdoom
+ 188: (7d 40 e2 a6|a6 e2 40 7d) mfppr r10
+ 18c: (7d 62 e2 a6|a6 e2 62 7d) mfppr32 r11
+ 190: (7d 80 e3 a6|a6 e3 80 7d) mtppr r12
+ 194: (7d a2 e3 a6|a6 e3 a2 7d) mtppr32 r13
#pass
diff --git a/gas/testsuite/gas/ppc/power7.s b/gas/testsuite/gas/ppc/power7.s
index 46518d4..e76884e 100644
--- a/gas/testsuite/gas/ppc/power7.s
+++ b/gas/testsuite/gas/ppc/power7.s
@@ -24,10 +24,6 @@ power7:
xvcpsgndp 43,44,45
wait
wait 0
- waitrsv
- wait 1
- waitimpl
- wait 2
doze
nap
sleep
@@ -83,14 +79,6 @@ power7:
dcbtstt 8,9
dcffix 10,12
dcffix. 20,22
- lbarx 10,11,12
- lbarx 10,11,12,0
- lbarx 10,11,12,1
- lharx 20,21,22
- lharx 20,21,22,0
- lharx 20,21,22,1
- stbcx. 10,11,12
- sthcx. 10,11,12
fre 14,15
fre. 14,15
fres 14,15