aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorAaron Sawdey <acsawdey@linux.vnet.ibm.com>2021-06-18 12:47:03 -0500
committerAaron Sawdey <acsawdey@linux.vnet.ibm.com>2021-06-18 17:14:39 -0500
commita798b3f15c47be55f535b754932a820b858870a8 (patch)
tree4565d46ccefc301368dadc2470a57e281b22a537 /gcc
parent629cbc682a773e64c4bcb800ea98fb3051cd810c (diff)
downloadgcc-a798b3f15c47be55f535b754932a820b858870a8.zip
gcc-a798b3f15c47be55f535b754932a820b858870a8.tar.gz
gcc-a798b3f15c47be55f535b754932a820b858870a8.tar.bz2
Fix p10 fusion regtests
Update the count of matches for the fusion combine patterns after the recent changes to them. At Segher's request, used \m and \M in the match patterns. Also I have grouped together all alternatives of each fusion insn, which should hopefully make this test a little less fragile. gcc/testsuite/ChangeLog * gcc.target/powerpc/fusion-p10-2logical.c: Update pattern match counts. * gcc.target/powerpc/fusion-p10-addadd.c: Update pattern match counts. * gcc.target/powerpc/fusion-p10-ldcmpi.c: Update pattern match counts. * gcc.target/powerpc/fusion-p10-logadd.c: Update pattern match counts.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/gcc.target/powerpc/fusion-p10-2logical.c401
-rw-r--r--gcc/testsuite/gcc.target/powerpc/fusion-p10-addadd.c17
-rw-r--r--gcc/testsuite/gcc.target/powerpc/fusion-p10-ldcmpi.c10
-rw-r--r--gcc/testsuite/gcc.target/powerpc/fusion-p10-logadd.c129
4 files changed, 194 insertions, 363 deletions
diff --git a/gcc/testsuite/gcc.target/powerpc/fusion-p10-2logical.c b/gcc/testsuite/gcc.target/powerpc/fusion-p10-2logical.c
index de22176..009a5f2 100644
--- a/gcc/testsuite/gcc.target/powerpc/fusion-p10-2logical.c
+++ b/gcc/testsuite/gcc.target/powerpc/fusion-p10-2logical.c
@@ -64,262 +64,151 @@ TEST(vboolchar_t);
TEST(vuint_t);
/* Recreate with:
- grep ' \*fuse_' fusion-p10-2logical.s|sed -e 's,^.*\*,,' |sort -k 7,7 |uniq -c|awk '{l=30-length($2); printf("/%s* { %s { scan-assembler-times \"%s\"%-*s %4d { target lp64 } } } *%s/\n","","dg-final",$2,l,"",$1,"");}'
+ grep ' \*fuse_' fusion-p10-2logical.s|sed -e 's,^.*\*,,' -e 's,/[0-9],/,' |sort -k 7,7 |uniq -c|awk '{l=30-length($2); printf("/%s* { %s { scan-assembler-times {\\m%s\\M}%-*s %4d { target lp64 } } } *%s/\n","","dg-final",$2,l,"",$1,"");}'
*/
-
-/* { dg-final { scan-assembler-times "fuse_and_and/1" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_and/2" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_and/0" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_and/1" 26 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_and/2" 48 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_and/3" 6 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_or/0" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_or/1" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_or/2" 32 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_orc/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_orc/1" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_orc/2" 48 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_xor/0" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_xor/1" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_xor/2" 32 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_eqv/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_eqv/2" 24 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_or/0" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_or/2" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_orc/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_orc/2" 24 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_xor/0" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_xor/2" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_eqv_and/0" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_eqv_and/2" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_eqv_andc/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_eqv_andc/2" 24 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_eqv_or/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_eqv_or/2" 24 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_and/0" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_and/2" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_andc/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_andc/2" 24 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_or/0" 14 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_or/1" 2 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_or/2" 72 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_or/3" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_orc/2" 24 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_orc/3" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_and/0" 28 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_and/1" 4 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_and/2" 48 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_and/3" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_andc/2" 24 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_andc/3" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_or/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_or/2" 24 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_orc/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_orc/2" 24 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_and/0" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_and/2" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_andc/0" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_andc/2" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_and/0" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_and/1" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_and/2" 32 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_andc/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_andc/1" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_andc/2" 48 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_or/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_or/1" 10 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_or/2" 72 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_or/3" 6 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_xor/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_xor/1" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_xor/2" 48 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_eqv/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_eqv/2" 24 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_or/1" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_or/2" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_xor/0" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_xor/2" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vandc_vand/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vandc_vand/1" 10 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vandc_vand/3" 6 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vandc_vor/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vandc_vor/1" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vandc_vorc/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vandc_vorc/1" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vandc_vxor/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vandc_vxor/1" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vand_vand/1" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vand_veqv/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vand_vor/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vand_vorc/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vand_vxor/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_veqv_vand/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_veqv_vandc/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_veqv_vor/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnand_vand/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnand_vandc/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnand_vor/0" 14 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnand_vor/1" 2 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnand_vor/3" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnand_vorc/3" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnor_vand/0" 14 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnor_vand/1" 2 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnor_vand/3" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnor_vandc/3" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnor_vor/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnor_vorc/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vorc_vand/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vorc_vand/1" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vorc_vandc/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vorc_vandc/1" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vorc_vor/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vorc_vor/1" 10 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vorc_vor/3" 6 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vorc_vxor/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vorc_vxor/1" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vor_vand/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vor_vandc/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vor_veqv/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vor_vor/1" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vor_vxor/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vxor_vand/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vxor_vandc/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vxor_veqv/3" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vxor_vnand/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vxor_vor/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vxor_vorc/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vxor_vxor/1" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_and/0" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_and/2" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_andc/0" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_andc/2" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_eqv/2" 24 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_eqv/3" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_nand/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_nand/2" 24 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_or/0" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_or/2" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_orc/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_orc/2" 24 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_xor/1" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_xor/2" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_and/1" 40 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_and/0" 40 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_and/1" 56 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_and/3" 24 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_or/0" 40 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_or/1" 40 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_orc/0" 32 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_orc/1" 32 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_orc/2" 16 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_xor/0" 40 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_andc_xor/1" 40 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_eqv/0" 32 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_eqv/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_or/0" 40 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_orc/0" 32 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_orc/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_xor/0" 40 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_eqv_and/0" 40 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_eqv_andc/0" 32 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_eqv_andc/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_eqv_or/0" 32 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_eqv_or/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_and/0" 40 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_andc/0" 32 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_andc/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_or/0" 56 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_or/1" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_or/2" 24 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_or/3" 32 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_orc/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_orc/3" 32 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_and/0" 70 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_and/1" 10 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_and/3" 40 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_andc/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_andc/3" 32 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_or/0" 32 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_or/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_orc/0" 32 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_orc/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_and/0" 40 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_andc/0" 40 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_and/0" 40 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_and/1" 40 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_andc/0" 32 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_andc/1" 32 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_andc/2" 16 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_or/0" 32 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_or/1" 40 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_or/2" 24 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_or/3" 24 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_xor/0" 32 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_xor/1" 32 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_orc_xor/2" 16 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_eqv/0" 32 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_eqv/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_or/1" 40 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_xor/0" 40 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vandc_vand/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vandc_vand/1" 10 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vandc_vand/3" 6 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vandc_vor/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vandc_vor/1" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vandc_vorc/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vandc_vorc/1" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vandc_vxor/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vandc_vxor/1" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vand_vand/1" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vand_veqv/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vand_vor/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vand_vorc/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vand_vxor/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_veqv_vand/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_veqv_vandc/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_veqv_vor/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnand_vand/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnand_vandc/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnand_vor/0" 14 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnand_vor/1" 2 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnand_vor/3" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnand_vorc/3" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnor_vand/0" 14 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnor_vand/1" 2 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnor_vand/3" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnor_vandc/3" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnor_vor/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vnor_vorc/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vorc_vand/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vorc_vand/1" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vorc_vandc/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vorc_vandc/1" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vorc_vor/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vorc_vor/1" 10 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vorc_vor/3" 6 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vorc_vxor/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vorc_vxor/1" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vor_vand/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vor_vandc/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vor_veqv/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vor_vor/1" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vor_vxor/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vxor_vand/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vxor_vandc/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vxor_veqv/3" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vxor_vnand/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vxor_vor/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vxor_vorc/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vxor_vxor/1" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_and/0" 40 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_andc/0" 40 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_eqv/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_eqv/3" 32 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_nand/0" 32 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_nand/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_or/0" 40 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_orc/0" 32 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_orc/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_xor_xor/1" 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_and_and\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_andc_and\M/} 96 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_andc_or\M/} 64 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_andc_orc\M/} 64 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_andc_xor\M/} 64 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_and_eqv\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_and_or\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_and_orc\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_and_xor\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_eqv_and\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_eqv_andc\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_eqv_or\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nand_and\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nand_andc\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nand_or\M/} 96 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nand_orc\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nor_and\M/} 96 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nor_andc\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nor_or\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nor_orc\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_or_and\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_or_andc\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_orc_and\M/} 64 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_orc_andc\M/} 64 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_orc_or\M/} 96 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_orc_xor\M/} 64 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_or_eqv\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_or_or\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_or_xor\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vandc_vand\M/} 24 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vandc_vor\M/} 16 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vandc_vorc\M/} 16 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vandc_vxor\M/} 16 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vand_vand\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vand_veqv\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vand_vor\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vand_vorc\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vand_vxor\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_veqv_vand\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_veqv_vandc\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_veqv_vor\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vnand_vand\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vnand_vandc\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vnand_vor\M/} 24 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vnand_vorc\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vnor_vand\M/} 24 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vnor_vandc\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vnor_vor\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vnor_vorc\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vorc_vand\M/} 16 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vorc_vandc\M/} 16 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vorc_vor\M/} 24 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vorc_vxor\M/} 16 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vor_vand\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vor_vandc\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vor_veqv\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vor_vor\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vor_vxor\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vxor_vand\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vxor_vandc\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vxor_veqv\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vxor_vnand\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vxor_vor\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vxor_vorc\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vxor_vxor\M/} 8 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_xor_and\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_xor_andc\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_xor_eqv\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_xor_nand\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_xor_or\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_xor_orc\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_xor_xor\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_and_and\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_andc_and\M/} 120 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_andc_or\M/} 80 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_andc_orc\M/} 80 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_andc_xor\M/} 80 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_and_eqv\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_and_or\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_and_orc\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_and_xor\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_eqv_and\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_eqv_andc\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_eqv_or\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nand_and\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nand_andc\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nand_or\M/} 120 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nand_orc\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nor_and\M/} 120 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nor_andc\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nor_or\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nor_orc\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_or_and\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_or_andc\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_orc_and\M/} 80 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_orc_andc\M/} 80 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_orc_or\M/} 120 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_orc_xor\M/} 80 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_or_eqv\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_or_or\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_or_xor\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vandc_vand\M/} 24 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vandc_vor\M/} 16 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vandc_vorc\M/} 16 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vandc_vxor\M/} 16 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vand_vand\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vand_veqv\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vand_vor\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vand_vorc\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vand_vxor\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_veqv_vand\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_veqv_vandc\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_veqv_vor\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vnand_vand\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vnand_vandc\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vnand_vor\M/} 24 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vnand_vorc\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vnor_vand\M/} 24 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vnor_vandc\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vnor_vor\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vnor_vorc\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vorc_vand\M/} 16 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vorc_vandc\M/} 16 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vorc_vor\M/} 24 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vorc_vxor\M/} 16 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vor_vand\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vor_vandc\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vor_veqv\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vor_vor\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vor_vxor\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vxor_vand\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vxor_vandc\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vxor_veqv\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vxor_vnand\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vxor_vor\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vxor_vorc\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vxor_vxor\M/} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_xor_and\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_xor_andc\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_xor_eqv\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_xor_nand\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_xor_or\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_xor_orc\M/} 40 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_xor_xor\M/} 40 { target ilp32 } } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fusion-p10-addadd.c b/gcc/testsuite/gcc.target/powerpc/fusion-p10-addadd.c
index f70b56a..68886b9 100644
--- a/gcc/testsuite/gcc.target/powerpc/fusion-p10-addadd.c
+++ b/gcc/testsuite/gcc.target/powerpc/fusion-p10-addadd.c
@@ -32,16 +32,7 @@ vlong vaddadd2(vlong s, vlong a, vlong b, vlong c)
return a+b+c;
}
-/* { dg-final { scan-assembler-times "fuse_add_add/0" 1 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_add_add/1" 1 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_add_add/2" 1 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vaddudm_vaddudm/0" 1 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vaddudm_vaddudm/1" 1 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_vaddudm_vaddudm/2" 1 { target lp64 } } } */
-
-/* { dg-final { scan-assembler-times "fuse_add_add/0" 1 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_add_add/1" 1 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_add_add/2" 1 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vaddudm_vaddudm/0" 0 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vaddudm_vaddudm/1" 0 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_vaddudm_vaddudm/2" 0 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_add_add\M/} 3 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vaddudm_vaddudm\M/} 3 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_add_add\M/} 3 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_vaddudm_vaddudm\M/} 0 { target ilp32 } } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fusion-p10-ldcmpi.c b/gcc/testsuite/gcc.target/powerpc/fusion-p10-ldcmpi.c
index ea1d5d0..526a026 100644
--- a/gcc/testsuite/gcc.target/powerpc/fusion-p10-ldcmpi.c
+++ b/gcc/testsuite/gcc.target/powerpc/fusion-p10-ldcmpi.c
@@ -53,16 +53,16 @@ TEST(int16_t)
TEST(uint8_t)
TEST(int8_t)
-/* { dg-final { scan-assembler-times "lbz_cmpldi_cr0_QI_clobber_CCUNS_zero" 2 { target lp64 } } } */
+/* { dg-final { scan-assembler-times "lbz_cmpldi_cr0_QI_clobber_CCUNS_zero" 4 { target lp64 } } } */
/* { dg-final { scan-assembler-times "ld_cmpdi_cr0_DI_DI_CC_none" 4 { target lp64 } } } */
/* { dg-final { scan-assembler-times "ld_cmpdi_cr0_DI_clobber_CC_none" 4 { target lp64 } } } */
/* { dg-final { scan-assembler-times "ld_cmpldi_cr0_DI_DI_CCUNS_none" 1 { target lp64 } } } */
/* { dg-final { scan-assembler-times "ld_cmpldi_cr0_DI_clobber_CCUNS_none" 1 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "lha_cmpdi_cr0_HI_clobber_CC_sign" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "lhz_cmpldi_cr0_HI_clobber_CCUNS_zero" 2 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "lwa_cmpdi_cr0_SI_EXTSI_CC_sign" 3 { target lp64 } } } */
+/* { dg-final { scan-assembler-times "lha_cmpdi_cr0_HI_clobber_CC_sign" 16 { target lp64 } } } */
+/* { dg-final { scan-assembler-times "lhz_cmpldi_cr0_HI_clobber_CCUNS_zero" 4 { target lp64 } } } */
+/* { dg-final { scan-assembler-times "lwa_cmpdi_cr0_SI_EXTSI_CC_sign" 0 { target lp64 } } } */
/* { dg-final { scan-assembler-times "lwa_cmpdi_cr0_SI_clobber_CC_none" 4 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "lwz_cmpldi_cr0_SI_EXTSI_CCUNS_zero" 2 { target lp64 } } } */
+/* { dg-final { scan-assembler-times "lwz_cmpldi_cr0_SI_EXTSI_CCUNS_zero" 0 { target lp64 } } } */
/* { dg-final { scan-assembler-times "lwz_cmpldi_cr0_SI_clobber_CCUNS_none" 2 { target lp64 } } } */
/* { dg-final { scan-assembler-times "lbz_cmpldi_cr0_QI_clobber_CCUNS_zero" 2 { target ilp32 } } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fusion-p10-logadd.c b/gcc/testsuite/gcc.target/powerpc/fusion-p10-logadd.c
index 21d7f40..b2fefe9 100644
--- a/gcc/testsuite/gcc.target/powerpc/fusion-p10-logadd.c
+++ b/gcc/testsuite/gcc.target/powerpc/fusion-p10-logadd.c
@@ -49,94 +49,45 @@ TEST(uint32_t);
TEST(int32_t);
TEST(uint64_t);
TEST(int64_t);
-
-/* { dg-final { scan-assembler-times "fuse_nand_rsubf/0" 2 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_rsubf/2" 2 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_rsubf/0" 2 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_rsubf/2" 2 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_add_nand/0" 4 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_add_nor/0" 4 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_add_or/0" 4 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_rsubf/0" 4 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_subf/0" 4 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_add/0" 4 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_subf/0" 4 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_add/0" 4 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_subf/0" 4 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_rsubf/0" 4 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_subf/0" 4 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_nand/0" 4 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_nand/1" 4 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_nor/0" 4 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_nor/1" 4 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_or/0" 4 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_or/1" 4 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_add/0" 6 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_add/0" 6 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_add_and/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_add_and/2" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_and/0" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_and/1" 8 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_add_nand/2" 12 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_add_nor/2" 12 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_add_or/2" 12 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_rsubf/2" 12 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_subf/2" 12 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_add/2" 12 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_subf/2" 12 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_add/2" 12 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_subf/2" 12 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_rsubf/2" 12 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_subf/2" 12 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_and/2" 16 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_add/2" 22 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_add/2" 22 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_nand/2" 24 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_nor/2" 24 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_or/2" 24 { target lp64 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_rsubf/0" 2 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_rsubf/2" 0 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_rsubf/0" 2 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_rsubf/2" 0 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_add_nand/0" 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_add_nor/0" 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_add_or/0" 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_rsubf/0" 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_subf/0" 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_add/0" 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_subf/0" 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_add/0" 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_subf/0" 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_rsubf/0" 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_subf/0" 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_nand/0" 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_nand/1" 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_nor/0" 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_nor/1" 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_or/0" 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_or/1" 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_add/0" 6 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_add/0" 6 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_add_and/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_add_and/2" 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_and/0" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_and/1" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_add_nand/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_add_nor/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_add_or/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_rsubf/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_subf/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_add/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nand_subf/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_add/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_nor_subf/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_rsubf/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_subf/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_and/2" 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_and_add/2" 16 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_or_add/2" 16 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_nand/2" 16 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_nor/2" 16 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times "fuse_subf_or/2" 16 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_add_and\M/} 16 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_add_nand\M/} 16 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_add_nor\M/} 16 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_add_or\M/} 16 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_and_add\M/} 28 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_and_rsubf\M/} 16 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_and_subf\M/} 16 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nand_add\M/} 16 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nand_rsubf\M/} 4 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nand_subf\M/} 16 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nor_add\M/} 16 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nor_rsubf\M/} 4 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nor_subf\M/} 16 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_or_add\M/} 28 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_or_rsubf\M/} 16 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_or_subf\M/} 16 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_subf_and\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_subf_nand\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_subf_nor\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_subf_or\M/} 32 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_add_and\M/} 12 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_add_nand\M/} 12 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_add_nor\M/} 12 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_add_or\M/} 12 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_and_add\M/} 22 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_and_rsubf\M/} 12 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_and_subf\M/} 12 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nand_add\M/} 12 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nand_rsubf\M/} 2 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nand_subf\M/} 12 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nor_add\M/} 12 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nor_rsubf\M/} 2 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_nor_subf\M/} 12 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_or_add\M/} 22 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_or_rsubf\M/} 12 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_or_subf\M/} 12 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_subf_and\M/} 24 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_subf_nand\M/} 24 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_subf_nor\M/} 24 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mfuse_subf_or\M/} 24 { target ilp32 } } } */