From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1881) id 07B963861830; Mon, 21 Jun 2021 20:38:27 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 07B963861830 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Aaron Sawdey To: gcc-cvs@gcc.gnu.org Subject: [gcc r11-8627] Fix p10 fusion regtests X-Act-Checkin: gcc X-Git-Author: Aaron Sawdey X-Git-Refname: refs/heads/releases/gcc-11 X-Git-Oldrev: f9fc20f0a535c36ab494fb1e5e0f32d000bdfcac X-Git-Newrev: 4c4bebb834ec19d68ef7248510cfe2548d864454 Message-Id: <20210621203827.07B963861830@sourceware.org> Date: Mon, 21 Jun 2021 20:38:27 +0000 (GMT) X-BeenThere: gcc-cvs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Jun 2021 20:38:27 -0000 https://gcc.gnu.org/g:4c4bebb834ec19d68ef7248510cfe2548d864454 commit r11-8627-g4c4bebb834ec19d68ef7248510cfe2548d864454 Author: Aaron Sawdey Date: Fri Jun 18 12:47:03 2021 -0500 Fix p10 fusion regtests Backported from trunk. 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. (cherry picked from commit a798b3f15c47be55f535b754932a820b858870a8) Diff: --- .../gcc.target/powerpc/fusion-p10-2logical.c | 285 +++++++++++---------- .../gcc.target/powerpc/fusion-p10-addadd.c | 10 +- .../gcc.target/powerpc/fusion-p10-ldcmpi.c | 34 ++- .../gcc.target/powerpc/fusion-p10-logadd.c | 86 +++---- 4 files changed, 215 insertions(+), 200 deletions(-) diff --git a/gcc/testsuite/gcc.target/powerpc/fusion-p10-2logical.c b/gcc/testsuite/gcc.target/powerpc/fusion-p10-2logical.c index 9a205373505..009a5f228d4 100644 --- a/gcc/testsuite/gcc.target/powerpc/fusion-p10-2logical.c +++ b/gcc/testsuite/gcc.target/powerpc/fusion-p10-2logical.c @@ -64,142 +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 } } *%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 } } */ -/* { dg-final { scan-assembler-times "fuse_and_and/2" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_andc_and/0" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_andc_and/1" 26 } } */ -/* { dg-final { scan-assembler-times "fuse_andc_and/2" 48 } } */ -/* { dg-final { scan-assembler-times "fuse_andc_and/3" 6 } } */ -/* { dg-final { scan-assembler-times "fuse_andc_or/0" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_andc_or/1" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_andc_or/2" 32 } } */ -/* { dg-final { scan-assembler-times "fuse_andc_orc/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_andc_orc/1" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_andc_orc/2" 48 } } */ -/* { dg-final { scan-assembler-times "fuse_andc_xor/0" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_andc_xor/1" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_andc_xor/2" 32 } } */ -/* { dg-final { scan-assembler-times "fuse_and_eqv/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_and_eqv/2" 24 } } */ -/* { dg-final { scan-assembler-times "fuse_and_or/0" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_and_or/2" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_and_orc/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_and_orc/2" 24 } } */ -/* { dg-final { scan-assembler-times "fuse_and_xor/0" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_and_xor/2" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_eqv_and/0" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_eqv_and/2" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_eqv_andc/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_eqv_andc/2" 24 } } */ -/* { dg-final { scan-assembler-times "fuse_eqv_or/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_eqv_or/2" 24 } } */ -/* { dg-final { scan-assembler-times "fuse_nand_and/0" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_nand_and/2" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_nand_andc/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_nand_andc/2" 24 } } */ -/* { dg-final { scan-assembler-times "fuse_nand_or/0" 14 } } */ -/* { dg-final { scan-assembler-times "fuse_nand_or/1" 2 } } */ -/* { dg-final { scan-assembler-times "fuse_nand_or/2" 72 } } */ -/* { dg-final { scan-assembler-times "fuse_nand_or/3" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_nand_orc/2" 24 } } */ -/* { dg-final { scan-assembler-times "fuse_nand_orc/3" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_nor_and/0" 28 } } */ -/* { dg-final { scan-assembler-times "fuse_nor_and/1" 4 } } */ -/* { dg-final { scan-assembler-times "fuse_nor_and/2" 48 } } */ -/* { dg-final { scan-assembler-times "fuse_nor_and/3" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_nor_andc/2" 24 } } */ -/* { dg-final { scan-assembler-times "fuse_nor_andc/3" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_nor_or/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_nor_or/2" 24 } } */ -/* { dg-final { scan-assembler-times "fuse_nor_orc/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_nor_orc/2" 24 } } */ -/* { dg-final { scan-assembler-times "fuse_or_and/0" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_or_and/2" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_or_andc/0" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_or_andc/2" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_orc_and/0" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_orc_and/1" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_orc_and/2" 32 } } */ -/* { dg-final { scan-assembler-times "fuse_orc_andc/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_orc_andc/1" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_orc_andc/2" 48 } } */ -/* { dg-final { scan-assembler-times "fuse_orc_or/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_orc_or/1" 10 } } */ -/* { dg-final { scan-assembler-times "fuse_orc_or/2" 72 } } */ -/* { dg-final { scan-assembler-times "fuse_orc_or/3" 6 } } */ -/* { dg-final { scan-assembler-times "fuse_orc_xor/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_orc_xor/1" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_orc_xor/2" 48 } } */ -/* { dg-final { scan-assembler-times "fuse_or_eqv/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_or_eqv/2" 24 } } */ -/* { dg-final { scan-assembler-times "fuse_or_or/1" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_or_or/2" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_or_xor/0" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_or_xor/2" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_vandc_vand/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vandc_vand/1" 10 } } */ -/* { dg-final { scan-assembler-times "fuse_vandc_vand/3" 6 } } */ -/* { dg-final { scan-assembler-times "fuse_vandc_vor/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vandc_vor/1" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vandc_vorc/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vandc_vorc/1" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vandc_vxor/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vandc_vxor/1" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vand_vand/1" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vand_veqv/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vand_vor/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vand_vorc/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vand_vxor/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_veqv_vand/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_veqv_vandc/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_veqv_vor/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vnand_vand/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vnand_vandc/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vnand_vor/0" 14 } } */ -/* { dg-final { scan-assembler-times "fuse_vnand_vor/1" 2 } } */ -/* { dg-final { scan-assembler-times "fuse_vnand_vor/3" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vnand_vorc/3" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vnor_vand/0" 14 } } */ -/* { dg-final { scan-assembler-times "fuse_vnor_vand/1" 2 } } */ -/* { dg-final { scan-assembler-times "fuse_vnor_vand/3" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vnor_vandc/3" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vnor_vor/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vnor_vorc/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vorc_vand/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vorc_vand/1" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vorc_vandc/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vorc_vandc/1" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vorc_vor/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vorc_vor/1" 10 } } */ -/* { dg-final { scan-assembler-times "fuse_vorc_vor/3" 6 } } */ -/* { dg-final { scan-assembler-times "fuse_vorc_vxor/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vorc_vxor/1" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vor_vand/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vor_vandc/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vor_veqv/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vor_vor/1" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vor_vxor/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vxor_vand/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vxor_vandc/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vxor_veqv/3" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vxor_vnand/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vxor_vor/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vxor_vorc/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_vxor_vxor/1" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_xor_and/0" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_xor_and/2" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_xor_andc/0" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_xor_andc/2" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_xor_eqv/2" 24 } } */ -/* { dg-final { scan-assembler-times "fuse_xor_eqv/3" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_xor_nand/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_xor_nand/2" 24 } } */ -/* { dg-final { scan-assembler-times "fuse_xor_or/0" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_xor_or/2" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_xor_orc/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_xor_orc/2" 24 } } */ -/* { dg-final { scan-assembler-times "fuse_xor_xor/1" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_xor_xor/2" 16 } } */ + +/* { 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 494ccdb5cdf..68886b92ea2 100644 --- a/gcc/testsuite/gcc.target/powerpc/fusion-p10-addadd.c +++ b/gcc/testsuite/gcc.target/powerpc/fusion-p10-addadd.c @@ -32,9 +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 } } */ -/* { dg-final { scan-assembler-times "fuse_add_add/1" 1 } } */ -/* { dg-final { scan-assembler-times "fuse_add_add/2" 1 } } */ -/* { dg-final { scan-assembler-times "fuse_vaddudm_vaddudm/0" 1 } } */ -/* { dg-final { scan-assembler-times "fuse_vaddudm_vaddudm/1" 1 } } */ -/* { dg-final { scan-assembler-times "fuse_vaddudm_vaddudm/2" 1 } } */ +/* { 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 99f9e92eeaf..ea1d5d01950 100644 --- a/gcc/testsuite/gcc.target/powerpc/fusion-p10-ldcmpi.c +++ b/gcc/testsuite/gcc.target/powerpc/fusion-p10-ldcmpi.c @@ -53,14 +53,26 @@ TEST(int16_t) TEST(uint8_t) TEST(int8_t) -/* { dg-final { scan-assembler-times "lbz_cmpldi_cr0_QI_clobber_CCUNS_zero" 2 } } */ -/* { dg-final { scan-assembler-times "ld_cmpdi_cr0_DI_DI_CC_none" 4 } } */ -/* { dg-final { scan-assembler-times "ld_cmpdi_cr0_DI_clobber_CC_none" 4 } } */ -/* { dg-final { scan-assembler-times "ld_cmpldi_cr0_DI_DI_CCUNS_none" 1 } } */ -/* { dg-final { scan-assembler-times "ld_cmpldi_cr0_DI_clobber_CCUNS_none" 1 } } */ -/* { dg-final { scan-assembler-times "lha_cmpdi_cr0_HI_clobber_CC_sign" 8 } } */ -/* { dg-final { scan-assembler-times "lhz_cmpldi_cr0_HI_clobber_CCUNS_zero" 2 } } */ -/* { dg-final { scan-assembler-times "lwa_cmpdi_cr0_SI_EXTSI_CC_sign" 3 } } */ -/* { dg-final { scan-assembler-times "lwa_cmpdi_cr0_SI_clobber_CC_none" 4 } } */ -/* { dg-final { scan-assembler-times "lwz_cmpldi_cr0_SI_EXTSI_CCUNS_zero" 2 } } */ -/* { dg-final { scan-assembler-times "lwz_cmpldi_cr0_SI_clobber_CCUNS_none" 2 } } */ +/* { dg-final { scan-assembler-times "lbz_cmpldi_cr0_QI_clobber_CCUNS_zero" 2 { 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 "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_clobber_CCUNS_none" 2 { target lp64 } } } */ + +/* { dg-final { scan-assembler-times "lbz_cmpldi_cr0_QI_clobber_CCUNS_zero" 2 { target ilp32 } } } */ +/* { dg-final { scan-assembler-times "ld_cmpdi_cr0_DI_DI_CC_none" 0 { target ilp32 } } } */ +/* { dg-final { scan-assembler-times "ld_cmpdi_cr0_DI_clobber_CC_none" 0 { target ilp32 } } } */ +/* { dg-final { scan-assembler-times "ld_cmpldi_cr0_DI_DI_CCUNS_none" 0 { target ilp32 } } } */ +/* { dg-final { scan-assembler-times "ld_cmpldi_cr0_DI_clobber_CCUNS_none" 0 { target ilp32 } } } */ +/* { dg-final { scan-assembler-times "lha_cmpdi_cr0_HI_clobber_CC_sign" 8 { target ilp32 } } } */ +/* { dg-final { scan-assembler-times "lhz_cmpldi_cr0_HI_clobber_CCUNS_zero" 2 { target ilp32 } } } */ +/* { dg-final { scan-assembler-times "lwa_cmpdi_cr0_SI_EXTSI_CC_sign" 0 { target ilp32 } } } */ +/* { dg-final { scan-assembler-times "lwa_cmpdi_cr0_SI_clobber_CC_none" 9 { target ilp32 } } } */ +/* { dg-final { scan-assembler-times "lwz_cmpldi_cr0_SI_EXTSI_CCUNS_zero" 0 { target ilp32 } } } */ +/* { dg-final { scan-assembler-times "lwz_cmpldi_cr0_SI_clobber_CCUNS_none" 6 { 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 b7022b2b61d..b2fefe95169 100644 --- a/gcc/testsuite/gcc.target/powerpc/fusion-p10-logadd.c +++ b/gcc/testsuite/gcc.target/powerpc/fusion-p10-logadd.c @@ -49,49 +49,45 @@ TEST(uint32_t); TEST(int32_t); TEST(uint64_t); TEST(int64_t); - -/* { dg-final { scan-assembler-times "fuse_nand_rsubf/0" 2 } } */ -/* { dg-final { scan-assembler-times "fuse_nand_rsubf/2" 2 } } */ -/* { dg-final { scan-assembler-times "fuse_nor_rsubf/0" 2 } } */ -/* { dg-final { scan-assembler-times "fuse_nor_rsubf/2" 2 } } */ -/* { dg-final { scan-assembler-times "fuse_add_nand/0" 4 } } */ -/* { dg-final { scan-assembler-times "fuse_add_nor/0" 4 } } */ -/* { dg-final { scan-assembler-times "fuse_add_or/0" 4 } } */ -/* { dg-final { scan-assembler-times "fuse_and_rsubf/0" 4 } } */ -/* { dg-final { scan-assembler-times "fuse_and_subf/0" 4 } } */ -/* { dg-final { scan-assembler-times "fuse_nand_add/0" 4 } } */ -/* { dg-final { scan-assembler-times "fuse_nand_subf/0" 4 } } */ -/* { dg-final { scan-assembler-times "fuse_nor_add/0" 4 } } */ -/* { dg-final { scan-assembler-times "fuse_nor_subf/0" 4 } } */ -/* { dg-final { scan-assembler-times "fuse_or_rsubf/0" 4 } } */ -/* { dg-final { scan-assembler-times "fuse_or_subf/0" 4 } } */ -/* { dg-final { scan-assembler-times "fuse_subf_nand/0" 4 } } */ -/* { dg-final { scan-assembler-times "fuse_subf_nand/1" 4 } } */ -/* { dg-final { scan-assembler-times "fuse_subf_nor/0" 4 } } */ -/* { dg-final { scan-assembler-times "fuse_subf_nor/1" 4 } } */ -/* { dg-final { scan-assembler-times "fuse_subf_or/0" 4 } } */ -/* { dg-final { scan-assembler-times "fuse_subf_or/1" 4 } } */ -/* { dg-final { scan-assembler-times "fuse_and_add/0" 6 } } */ -/* { dg-final { scan-assembler-times "fuse_or_add/0" 6 } } */ -/* { dg-final { scan-assembler-times "fuse_add_and/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_add_and/2" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_subf_and/0" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_subf_and/1" 8 } } */ -/* { dg-final { scan-assembler-times "fuse_add_nand/2" 12 } } */ -/* { dg-final { scan-assembler-times "fuse_add_nor/2" 12 } } */ -/* { dg-final { scan-assembler-times "fuse_add_or/2" 12 } } */ -/* { dg-final { scan-assembler-times "fuse_and_rsubf/2" 12 } } */ -/* { dg-final { scan-assembler-times "fuse_and_subf/2" 12 } } */ -/* { dg-final { scan-assembler-times "fuse_nand_add/2" 12 } } */ -/* { dg-final { scan-assembler-times "fuse_nand_subf/2" 12 } } */ -/* { dg-final { scan-assembler-times "fuse_nor_add/2" 12 } } */ -/* { dg-final { scan-assembler-times "fuse_nor_subf/2" 12 } } */ -/* { dg-final { scan-assembler-times "fuse_or_rsubf/2" 12 } } */ -/* { dg-final { scan-assembler-times "fuse_or_subf/2" 12 } } */ -/* { dg-final { scan-assembler-times "fuse_subf_and/2" 16 } } */ -/* { dg-final { scan-assembler-times "fuse_and_add/2" 22 } } */ -/* { dg-final { scan-assembler-times "fuse_or_add/2" 22 } } */ -/* { dg-final { scan-assembler-times "fuse_subf_nand/2" 24 } } */ -/* { dg-final { scan-assembler-times "fuse_subf_nor/2" 24 } } */ -/* { dg-final { scan-assembler-times "fuse_subf_or/2" 24 } } */ +/* { 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 } } } */