+2020-10-13 Alan Modra <amodra@gmail.com>
+
+ * gdb.arch/powerpc-altivec.s,
+ * gdb.arch/powerpc-power7.s,
+ * gdb.arch/powerpc-power8.s,
+ * gdb.arch/powerpc-power9.s,
+ * gdb.arch/powerpc-vsx.s,
+ * gdb.arch/powerpc-vsx2.s: Remove duplicate instructions.
+ * gdb.arch/powerpc-altivec.exp,
+ * gdb.arch/powerpc-power7.exp,
+ * gdb.arch/powerpc-power8.exp,
+ * gdb.arch/powerpc-power9.exp,
+ * gdb.arch/powerpc-vsx.exp,
+ * gdb.arch/powerpc-vsx2.exp: Likewise, and update expected
+ disassembly of mfvsrd/mtvsrd.
+
2020-10-13 Alan Modra <amodra@gmail.com>
* gdb.arch/arm-disassembler-options.exp: Adjust expected
func_check "vmrglh v14,v8,v15"
func_check "vmrglw v31,v21,v5"
func_check "vmr v24,v9"
-func_check "vmr v24,v9"
func_check "vmsummbm v0,v24,v15,v23"
func_check "vmsumshm v1,v4,v7,v25"
func_check "vmsumshs v9,v8,v13,v31"
func_check "vnmsubfp v8,v2,v6,v5"
func_check "vnor v31,v9,v10"
func_check "vnot v25,v31"
-func_check "vnot v25,v31"
func_check "vor v23,v7,v2"
func_check "vperm v0,v28,v22,v25"
func_check "vpkpx v16,v25,v17"
.long 0x11c8794c /* vmrglh v14,v8,v15 */
.long 0x13f5298c /* vmrglw v31,v21,v5 */
.long 0x13094c84 /* vmr v24,v9 */
- .long 0x13094c84 /* vmr v24,v9 */
.long 0x10187de5 /* vmsummbm v0,v24,v15,v23 */
.long 0x10243e68 /* vmsumshm v1,v4,v7,v25 */
.long 0x11286fe9 /* vmsumshs v9,v8,v13,v31 */
.long 0x110229af /* vnmsubfp v8,v2,v6,v5 */
.long 0x13e95504 /* vnor v31,v9,v10 */
.long 0x133ffd04 /* vnot v25,v31 */
- .long 0x133ffd04 /* vnot v25,v31 */
.long 0x12e71484 /* vor v23,v7,v2 */
.long 0x101cb66b /* vperm v0,v28,v22,v25 */
.long 0x12198b0e /* vpkpx v16,v25,v17 */
func_check "xxmrghd vs43,vs44,vs45"
func_check "xxmrgld vs3,vs4,vs5"
func_check "xxmrgld vs43,vs44,vs45"
-func_check "xxmrghd vs3,vs4,vs5"
-func_check "xxmrghd vs43,vs44,vs45"
-func_check "xxmrgld vs3,vs4,vs5"
-func_check "xxmrgld vs43,vs44,vs45"
func_check "xxpermdi vs3,vs4,vs5,1"
func_check "xxpermdi vs43,vs44,vs45,1"
func_check "xxpermdi vs3,vs4,vs5,2"
func_check "xxpermdi vs43,vs44,vs45,2"
func_check "xvmovdp vs3,vs4"
func_check "xvmovdp vs43,vs44"
-func_check "xvmovdp vs3,vs4"
-func_check "xvmovdp vs43,vs44"
func_check "xvcpsgndp vs3,vs4,vs5"
func_check "xvcpsgndp vs43,vs44,vs45"
func_check "doze"
func_check "frsqrtes. f14,f15"
func_check "isel r2,r3,r4,28"
func_check "yield"
-func_check "yield"
func_check "ori r2,r2,0"
func_check "nop"
-func_check "nop"
-func_check "ori r2,r2,0"
func_check "mdoio"
-func_check "mdoio"
-func_check "mdoom"
func_check "mdoom"
func_check "mfppr r10"
func_check "mfppr32 r11"
.long 0xf16c6857 /* xxmrghd vs43,vs44,vs45 */
.long 0xf0642b50 /* xxmrgld vs3,vs4,vs5 */
.long 0xf16c6b57 /* xxmrgld vs43,vs44,vs45 */
- .long 0xf0642850 /* xxmrghd vs3,vs4,vs5 */
- .long 0xf16c6857 /* xxmrghd vs43,vs44,vs45 */
- .long 0xf0642b50 /* xxmrgld vs3,vs4,vs5 */
- .long 0xf16c6b57 /* xxmrgld vs43,vs44,vs45 */
.long 0xf0642950 /* xxpermdi vs3,vs4,vs5,1 */
.long 0xf16c6957 /* xxpermdi vs43,vs44,vs45,1 */
.long 0xf0642a50 /* xxpermdi vs3,vs4,vs5,2 */
.long 0xf16c6a57 /* xxpermdi vs43,vs44,vs45,2 */
.long 0xf0642780 /* xvmovdp vs3,vs4 */
.long 0xf16c6787 /* xvmovdp vs43,vs44 */
- .long 0xf0642780 /* xvmovdp vs3,vs4 */
- .long 0xf16c6787 /* xvmovdp vs43,vs44 */
.long 0xf0642f80 /* xvcpsgndp vs3,vs4,vs5 */
.long 0xf16c6f87 /* xvcpsgndp vs43,vs44,vs45 */
.long 0x4c000324 /* doze */
.long 0xedc07835 /* frsqrtes. f14,f15 */
.long 0x7c43271e /* isel r2,r3,r4,28 */
.long 0x7f7bdb78 /* yield */
- .long 0x7f7bdb78 /* yield */
.long 0x60420000 /* ori r2,r2,0 */
.long 0x60000000 /* nop */
- .long 0x60000000 /* nop */
- .long 0x60420000 /* ori r2,r2,0 */
.long 0x7fbdeb78 /* mdoio */
- .long 0x7fbdeb78 /* mdoio */
- .long 0x7fdef378 /* mdoom */
.long 0x7fdef378 /* mdoom */
.long 0x7d40e2a6 /* mfppr r10 */
.long 0x7d62e2a6 /* mfppr32 r11 */
func_check "tbegin."
func_check "tcheck cr7"
func_check "tend."
-func_check "tend."
-func_check "tendall."
func_check "tendall."
func_check "treclaim. r24"
func_check "trechkpt."
func_check "tsuspend."
-func_check "tsuspend."
-func_check "tresume."
func_check "tresume."
func_check "ori r2,r2,0"
func_check "nop"
-func_check "ori r2,r2,0"
func_check "rfebb 0"
func_check "rfebb"
-func_check "rfebb"
func_check "bgttar cr5"
func_check "bnstarl cr1"
func_check "blttar+ cr3"
func_check "lxsiwzx vs40,0,r25"
func_check "lxsiwax vs25,0,r26"
func_check "lxsiwax vs3,0,r3"
-func_check "mfvsrd r12,vs62"
+func_check "mfvrd r12,v30"
func_check "mffprwz r20,f12"
func_check "stxsiwx vs14,r9,r14"
func_check "stxsiwx vs21,0,r8"
-func_check "mtvsrd vs48,r11"
+func_check "mtvrd v16,r11"
func_check "mtvrwa v31,r23"
func_check "mtfprwz f16,r26"
func_check "lxsspx vs13,r19,r13"
func_check "msgsnd r14"
func_check "msgclr r23"
func_check "lxvd2x vs40,0,r5"
-func_check "lxvd2x vs40,0,r5"
func_check "lxvd2x vs10,r20,r6"
-func_check "lxvd2x vs10,r20,r6"
-func_check "stxvd2x vs41,0,r7"
func_check "stxvd2x vs41,0,r7"
func_check "stxvd2x vs11,r21,r8"
-func_check "stxvd2x vs11,r21,r8"
-func_check "lbarx r20,0,r7"
func_check "lbarx r20,0,r7"
func_check "lbarx r20,0,r7,1"
func_check "lbarx r20,r1,r7"
-func_check "lbarx r20,r1,r7"
func_check "lbarx r20,r1,r7,1"
func_check "ldarx r21,0,r8"
-func_check "ldarx r21,0,r8"
func_check "ldarx r21,0,r8,1"
func_check "ldarx r21,r1,r8"
-func_check "ldarx r21,r1,r8"
func_check "ldarx r21,r1,r8,1"
func_check "lharx r22,0,r9"
-func_check "lharx r22,0,r9"
func_check "lharx r22,0,r9,1"
func_check "lharx r22,r1,r9"
-func_check "lharx r22,r1,r9"
func_check "lharx r22,r1,r9,1"
func_check "lwarx r23,0,r10"
-func_check "lwarx r23,0,r10"
func_check "lwarx r23,0,r10,1"
func_check "lwarx r23,r1,r10"
-func_check "lwarx r23,r1,r10"
func_check "lwarx r23,r1,r10,1"
func_check "stbcx. r10,0,r7"
func_check "stbcx. r10,r1,r7"
.long 0x7c00051d /* tbegin. */
.long 0x7f80059c /* tcheck cr7 */
.long 0x7c00055d /* tend. */
- .long 0x7c00055d /* tend. */
- .long 0x7e00055d /* tendall. */
.long 0x7e00055d /* tendall. */
.long 0x7c18075d /* treclaim. r24 */
.long 0x7c0007dd /* trechkpt. */
.long 0x7c0005dd /* tsuspend. */
- .long 0x7c0005dd /* tsuspend. */
- .long 0x7c2005dd /* tresume. */
.long 0x7c2005dd /* tresume. */
.long 0x60420000 /* ori r2,r2,0 */
.long 0x60000000 /* nop */
- .long 0x60420000 /* ori r2,r2,0 */
.long 0x4c000124 /* rfebb 0 */
.long 0x4c000924 /* rfebb */
- .long 0x4c000924 /* rfebb */
.long 0x4d950460 /* bgttar cr5 */
.long 0x4c870461 /* bnstarl cr1 */
.long 0x4dec0460 /* blttar+ cr3 */
.long 0x7c00719c /* msgsnd r14 */
.long 0x7c00b9dc /* msgclr r23 */
.long 0x7d002e99 /* lxvd2x vs40,0,r5 */
- .long 0x7d002e99 /* lxvd2x vs40,0,r5 */
.long 0x7d543698 /* lxvd2x vs10,r20,r6 */
- .long 0x7d543698 /* lxvd2x vs10,r20,r6 */
- .long 0x7d203f99 /* stxvd2x vs41,0,r7 */
.long 0x7d203f99 /* stxvd2x vs41,0,r7 */
.long 0x7d754798 /* stxvd2x vs11,r21,r8 */
- .long 0x7d754798 /* stxvd2x vs11,r21,r8 */
- .long 0x7e803868 /* lbarx r20,0,r7 */
.long 0x7e803868 /* lbarx r20,0,r7 */
.long 0x7e803869 /* lbarx r20,0,r7,1 */
.long 0x7e813868 /* lbarx r20,r1,r7 */
- .long 0x7e813868 /* lbarx r20,r1,r7 */
.long 0x7e813869 /* lbarx r20,r1,r7,1 */
.long 0x7ea040a8 /* ldarx r21,0,r8 */
- .long 0x7ea040a8 /* ldarx r21,0,r8 */
.long 0x7ea040a9 /* ldarx r21,0,r8,1 */
.long 0x7ea140a8 /* ldarx r21,r1,r8 */
- .long 0x7ea140a8 /* ldarx r21,r1,r8 */
.long 0x7ea140a9 /* ldarx r21,r1,r8,1 */
.long 0x7ec048e8 /* lharx r22,0,r9 */
- .long 0x7ec048e8 /* lharx r22,0,r9 */
.long 0x7ec048e9 /* lharx r22,0,r9,1 */
.long 0x7ec148e8 /* lharx r22,r1,r9 */
- .long 0x7ec148e8 /* lharx r22,r1,r9 */
.long 0x7ec148e9 /* lharx r22,r1,r9,1 */
.long 0x7ee05028 /* lwarx r23,0,r10 */
- .long 0x7ee05028 /* lwarx r23,0,r10 */
.long 0x7ee05029 /* lwarx r23,0,r10,1 */
.long 0x7ee15028 /* lwarx r23,r1,r10 */
- .long 0x7ee15028 /* lwarx r23,r1,r10 */
.long 0x7ee15029 /* lwarx r23,r1,r10,1 */
.long 0x7d403d6d /* stbcx. r10,0,r7 */
.long 0x7d413d6d /* stbcx. r10,r1,r7 */
func_check "xxspltib vs4,0"
func_check "xxspltib vs4,128"
func_check "xxspltib vs41,255"
-func_check "xxspltib vs41,255"
func_check "xxinsertw vs5,vs6,0"
func_check "xxinsertw vs50,vs60,15"
func_check "xxbrh vs6,vs7"
func_check "xvcvhpsp vs42,vs52"
func_check "xvcvsphp vs43,vs53"
func_check "lnia r3"
-func_check "lnia r3"
func_check "addpcis r4,1"
-func_check "addpcis r4,1"
-func_check "addpcis r5,-2"
func_check "addpcis r5,-2"
func_check "addpcis r6,32767"
-func_check "addpcis r6,32767"
-func_check "addpcis r7,-32768"
func_check "addpcis r7,-32768"
func_check "slbsync"
func_check "slbiag r10"
func_check "slbieg r10,r11"
func_check "slbmfee r3,r4"
-func_check "slbmfee r3,r4"
func_check "slbmfee r3,r4,1"
func_check "slbmfev r4,r5"
-func_check "slbmfev r4,r5"
func_check "slbmfev r4,r5,1"
func_check "tlbie r3,r4"
-func_check "tlbie r3,r4"
func_check "tlbie r3,r4,3,1,1"
func_check "tlbiel r3"
-func_check "tlbiel r3"
func_check "tlbiel r3,r4,3,1,1"
func_check "copy r12,r13"
func_check "paste. r10,r11"
func_check "cpabort"
func_check "hwsync"
-func_check "hwsync"
-func_check "hwsync"
func_check "lwsync"
-func_check "lwsync"
-func_check "ptesync"
func_check "ptesync"
func_check "ldat r20,0,0"
func_check "ldat r20,r10,28"
func_check "rmieg r30"
func_check "stop"
func_check "wait"
-func_check "wait"
func_check "darn r3,0"
func_check "darn r3,1"
func_check "darn r3,2"
.long 0xf08002d0 /* xxspltib vs4,0 */
.long 0xf08402d0 /* xxspltib vs4,128 */
.long 0xf127fad1 /* xxspltib vs41,255 */
- .long 0xf127fad1 /* xxspltib vs41,255 */
.long 0xf0a032d4 /* xxinsertw vs5,vs6,0 */
.long 0xf24fe2d7 /* xxinsertw vs50,vs60,15 */
.long 0xf0c73f6c /* xxbrh vs6,vs7 */
.long 0x4c600004 /* lnia r3 */
.long 0x4c600004 /* addpcis r3,0 */
.long 0x4c800005 /* addpcis r4,1 */
- .long 0x4c800005 /* addpcis r4,1 */
.long 0x4cbfffc4 /* addpcis r5,-2 */
- .long 0x4cbfffc4 /* addpcis r5,-2 */
- .long 0x4cdf7fc5 /* addpcis r6,32767 */
.long 0x4cdf7fc5 /* addpcis r6,32767 */
.long 0x4ce08004 /* addpcis r7,-32768 */
- .long 0x4ce08004 /* addpcis r7,-32768 */
.long 0x7c0002a4 /* slbsync */
.long 0x7d4006a4 /* slbiag r10 */
.long 0x7d405ba4 /* slbieg r10,r11 */
.long 0x7c602726 /* slbmfee r3,r4 */
- .long 0x7c602726 /* slbmfee r3,r4 */
.long 0x7c612726 /* slbmfee r3,r4,1 */
.long 0x7c802ea6 /* slbmfev r4,r5 */
- .long 0x7c802ea6 /* slbmfev r4,r5 */
.long 0x7c812ea6 /* slbmfev r4,r5,1 */
.long 0x7c801a64 /* tlbie r3,r4 */
- .long 0x7c801a64 /* tlbie r3,r4 */
.long 0x7c8f1a64 /* tlbie r3,r4,3,1,1 */
.long 0x7c001a24 /* tlbiel r3 */
- .long 0x7c001a24 /* tlbiel r3 */
.long 0x7c8f1a24 /* tlbiel r3,r4,3,1,1 */
.long 0x7c2c6e0c /* copy r12,r13 */
.long 0x7c2a5f0d /* paste. r10,r11 */
.long 0x7c00068c /* cpabort */
.long 0x7c0004ac /* hwsync */
- .long 0x7c0004ac /* hwsync */
- .long 0x7c0004ac /* hwsync */
.long 0x7c2004ac /* lwsync */
- .long 0x7c2004ac /* lwsync */
- .long 0x7c4004ac /* ptesync */
.long 0x7c4004ac /* ptesync */
.long 0x7e8004cc /* ldat r20,0,0 */
.long 0x7e8ae4cc /* ldat r20,r10,28 */
.long 0x7c00f6e4 /* rmieg r30 */
.long 0x4c0002e4 /* stop */
.long 0x7c00003c /* wait */
- .long 0x7c00003c /* wait */
.long 0x7c6005e6 /* darn r3,0 */
.long 0x7c6105e6 /* darn r3,1 */
.long 0x7c6205e6 /* darn r3,2 */
func_check "xvcmpgtsp. vs40,vs50,vs60"
func_check "xvcpsgndp vs40,vs50,vs60"
func_check "xvmovdp vs40,vs60"
-func_check "xvmovdp vs40,vs60"
func_check "xvcpsgnsp vs40,vs50,vs60"
func_check "xvmovsp vs40,vs60"
-func_check "xvmovsp vs40,vs60"
func_check "xvcvdpsp vs40,vs60"
func_check "xvcvdpsxds vs40,vs60"
func_check "xvcvdpsxws vs40,vs60"
func_check "xxpermdi vs40,vs50,vs60,2"
func_check "xxmrgld vs40,vs50,vs60"
func_check "xxspltd vs40,vs50,0"
-func_check "xxspltd vs40,vs50,0"
func_check "xxspltd vs40,vs50,1"
-func_check "xxspltd vs40,vs50,1"
-func_check "xxmrghd vs40,vs50,vs60"
-func_check "xxmrghd vs40,vs50,vs60"
-func_check "xxmrgld vs40,vs50,vs60"
-func_check "xxswapd vs40,vs50"
func_check "xxswapd vs40,vs50"
func_check "xxsel vs40,vs50,vs60,vs62"
func_check "xxsldwi vs40,vs50,vs60,2"
func_check "xxspltw vs40,vs60,2"
func_check "lxvd2x vs40,0,r20"
-func_check "lxvd2x vs40,r10,r20"
func_check "stxvd2x vs40,0,r20"
-func_check "stxvd2x vs40,r10,r20"
.long 0xf112e65f /* xvcmpgtsp. vs40,vs50,vs60 */
.long 0xf112e787 /* xvcpsgndp vs40,vs50,vs60 */
.long 0xf11ce787 /* xvmovdp vs40,vs60 */
- .long 0xf11ce787 /* xvmovdp vs40,vs60 */
.long 0xf112e687 /* xvcpsgnsp vs40,vs50,vs60 */
.long 0xf11ce687 /* xvmovsp vs40,vs60 */
- .long 0xf11ce687 /* xvmovsp vs40,vs60 */
.long 0xf100e627 /* xvcvdpsp vs40,vs60 */
.long 0xf100e763 /* xvcvdpsxds vs40,vs60 */
.long 0xf100e363 /* xvcvdpsxws vs40,vs60 */
.long 0xf112e257 /* xxpermdi vs40,vs50,vs60,2 */
.long 0xf112e357 /* xxmrgld vs40,vs50,vs60 */
.long 0xf1129057 /* xxspltd vs40,vs50,0 */
- .long 0xf1129057 /* xxspltd vs40,vs50,0 */
.long 0xf1129357 /* xxspltd vs40,vs50,1 */
- .long 0xf1129357 /* xxspltd vs40,vs50,1 */
- .long 0xf112e057 /* xxmrghd vs40,vs50,vs60 */
- .long 0xf112e057 /* xxmrghd vs40,vs50,vs60 */
- .long 0xf112e357 /* xxmrgld vs40,vs50,vs60 */
- .long 0xf1129257 /* xxswapd vs40,vs50 */
.long 0xf1129257 /* xxswapd vs40,vs50 */
.long 0xf112e7bf /* xxsel vs40,vs50,vs60,vs62 */
.long 0xf112e217 /* xxsldwi vs40,vs50,vs60,2 */
.long 0xf102e293 /* xxspltw vs40,vs60,2 */
.long 0x7d00a699 /* lxvd2x vs40,0,r20 */
- .long 0x7d0aa699 /* lxvd2x vs40,r10,r20 */
.long 0x7d00a799 /* stxvd2x vs40,0,r20 */
- .long 0x7d0aa799 /* stxvd2x vs40,r10,r20 */
func_check "lxsiwzx vs40,0,r25"
func_check "lxsiwax vs25,0,r26"
func_check "lxsiwax vs3,0,r3"
-func_check "mfvsrd r12,vs30"
-func_check "mfvsrd r12,vs30"
-func_check "mfvsrd r12,vs62"
-func_check "mfvsrd r12,vs62"
+func_check "mffprd r12,f30"
+func_check "mfvrd r12,v30"
func_check "mffprwz r20,f12"
-func_check "mffprwz r20,f12"
-func_check "mfvrwz r21,v12"
func_check "mfvrwz r21,v12"
func_check "stxsiwx vs14,r9,r14"
func_check "stxsiwx vs21,0,r8"
-func_check "mtvsrd vs11,r28"
-func_check "mtvsrd vs11,r28"
-func_check "mtvsrd vs43,r29"
-func_check "mtvsrd vs43,r29"
-func_check "mtfprwa f24,r22"
+func_check "mtfprd f11,r28"
+func_check "mtvrd v11,r29"
func_check "mtfprwa f24,r22"
func_check "mtvrwa v25,r23"
-func_check "mtvrwa v25,r23"
-func_check "mtfprwz f26,r27"
func_check "mtfprwz f26,r27"
func_check "mtvrwz v27,r28"
-func_check "mtvrwz v27,r28"
func_check "lxsspx vs13,r19,r13"
func_check "lxsspx vs18,0,r13"
func_check "stxsspx vs43,r2,r4"
.long 0x7f20d098 /* lxsiwax vs25,0,r26 */
.long 0x7c601898 /* lxsiwax vs3,0,r3 */
.long 0x7fcc0066 /* mfvsrd r12,vs30 */
- .long 0x7fcc0066 /* mfvsrd r12,vs30 */
- .long 0x7fcc0067 /* mfvsrd r12,vs62 */
.long 0x7fcc0067 /* mfvsrd r12,vs62 */
.long 0x7d9400e6 /* mffprwz r20,f12 */
- .long 0x7d9400e6 /* mffprwz r20,f12 */
- .long 0x7d9500e7 /* mfvrwz r21,v12 */
.long 0x7d9500e7 /* mfvrwz r21,v12 */
.long 0x7dc97118 /* stxsiwx vs14,r9,r14 */
.long 0x7ea04118 /* stxsiwx vs21,0,r8 */
.long 0x7d7c0166 /* mtvsrd vs11,r28 */
- .long 0x7d7c0166 /* mtvsrd vs11,r28 */
.long 0x7d7d0167 /* mtvsrd vs43,r29 */
- .long 0x7d7d0167 /* mtvsrd vs43,r29 */
- .long 0x7f1601a6 /* mtfprwa f24,r22 */
.long 0x7f1601a6 /* mtfprwa f24,r22 */
.long 0x7f3701a7 /* mtvrwa v25,r23 */
- .long 0x7f3701a7 /* mtvrwa v25,r23 */
.long 0x7f5b01e6 /* mtfprwz f26,r27 */
- .long 0x7f5b01e6 /* mtfprwz f26,r27 */
- .long 0x7f7c01e7 /* mtvrwz v27,r28 */
.long 0x7f7c01e7 /* mtvrwz v27,r28 */
.long 0x7db36c18 /* lxsspx vs13,r19,r13 */
.long 0x7e406c18 /* lxsspx vs18,0,r13 */