From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by sourceware.org (Postfix) with ESMTPS id 5CED43857022 for ; Wed, 1 Sep 2021 16:14:06 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 5CED43857022 Received: from pps.filterd (m0098421.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id 181G2l5a135862; Wed, 1 Sep 2021 12:14:05 -0400 Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com with ESMTP id 3atafacvum-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 01 Sep 2021 12:14:05 -0400 Received: from m0098421.ppops.net (m0098421.ppops.net [127.0.0.1]) by pps.reinject (8.16.0.43/8.16.0.43) with SMTP id 181G2qV1136278; Wed, 1 Sep 2021 12:14:05 -0400 Received: from ppma02dal.us.ibm.com (a.bd.3ea9.ip4.static.sl-reverse.com [169.62.189.10]) by mx0a-001b2d01.pphosted.com with ESMTP id 3atafacvu1-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 01 Sep 2021 12:14:05 -0400 Received: from pps.filterd (ppma02dal.us.ibm.com [127.0.0.1]) by ppma02dal.us.ibm.com (8.16.1.2/8.16.1.2) with SMTP id 181GCl7b029156; Wed, 1 Sep 2021 16:14:04 GMT Received: from b03cxnp08027.gho.boulder.ibm.com (b03cxnp08027.gho.boulder.ibm.com [9.17.130.19]) by ppma02dal.us.ibm.com with ESMTP id 3aqcse923f-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 01 Sep 2021 16:14:04 +0000 Received: from b03ledav005.gho.boulder.ibm.com (b03ledav005.gho.boulder.ibm.com [9.17.130.236]) by b03cxnp08027.gho.boulder.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 181GE3KI12714380 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 1 Sep 2021 16:14:03 GMT Received: from b03ledav005.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 126AEBE07A; Wed, 1 Sep 2021 16:14:03 +0000 (GMT) Received: from b03ledav005.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id F1111BE058; Wed, 1 Sep 2021 16:14:02 +0000 (GMT) Received: from localhost (unknown [9.40.194.84]) by b03ledav005.gho.boulder.ibm.com (Postfix) with ESMTP; Wed, 1 Sep 2021 16:14:02 +0000 (GMT) From: Bill Schmidt To: gcc-patches@gcc.gnu.org Cc: segher@kernel.crashing.org, dje.gcc@gmail.com Subject: [PATCHv5 00/18] Replace the Power target-specific builtin machinery Date: Wed, 1 Sep 2021 11:13:36 -0500 Message-Id: X-Mailer: git-send-email 2.17.1 X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: 9_KxrfisIpLt0scFbB50TO6BXx0Sb2-x X-Proofpoint-GUID: OuY07H3jjmbI_3BpHrFj-hXYTGPbIxua X-Proofpoint-UnRewURL: 0 URL was un-rewritten MIME-Version: 1.0 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.391, 18.0.790 definitions=2021-09-01_05:2021-09-01, 2021-09-01 signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 priorityscore=1501 bulkscore=0 adultscore=0 impostorscore=0 spamscore=0 suspectscore=0 lowpriorityscore=0 mlxlogscore=999 mlxscore=0 phishscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2107140000 definitions=main-2109010094 X-Spam-Status: No, score=-5.5 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_EF, KAM_SHORT, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 01 Sep 2021 16:14:16 -0000 Hi! Original patch series here: https://gcc.gnu.org/pipermail/gcc-patches/2021-April/568840.html V2 patch series here: https://gcc.gnu.org/pipermail/gcc-patches/2021-June/572231.html V3 patch series here: https://gcc.gnu.org/pipermail/gcc-patches/2021-June/573020.html V4 patch series here: https://gcc.gnu.org/pipermail/gcc-patches/2021-July/576284.html Thanks for all the reviews so far! We're into the home stretch. I needed to rebase this series again in order to pick up some changes from upstream. Patch 01/18 is a reposting of V4 patch 19/34, addressing some of the comments. Full refactoring of this stuff will be done later, after this patch series can burn in a little. This wasn't yet formally approved. Patch 02/18 is new, and is a minor bug fix. Patches 03/18 through 17/18 correspond to V4 patches 20/34 through 34/34. These were adjusted for upstream changes, and I did some formatting cleanups. I also provided better descriptions for some of the patches. Patch 18/18 is new, and improves the parser to handle escape-newline input. With that in place, it cleans up all the long lines in the input files. Bootstrapped and tested on powerpc64le-linux-gnu (P10) and powerpc64-linux-gnu (32- and 64-bit, P8). There are no regressions for little endian. There are a small handful of big-endian regressions that have crept in, and I'll post patches for those after I work through them. But no need to hold up reviews on the rest of this in the meantime. Thanks again for all of the helpful reviews so far! Bill Bill Schmidt (18): rs6000: Handle overloads during program parsing rs6000: Move __builtin_mffsl to the [always] stanza rs6000: Handle gimple folding of target built-ins rs6000: Handle some recent MMA builtin changes rs6000: Support for vectorizing built-in functions rs6000: Builtin expansion, part 1 rs6000: Builtin expansion, part 2 rs6000: Builtin expansion, part 3 rs6000: Builtin expansion, part 4 rs6000: Builtin expansion, part 5 rs6000: Builtin expansion, part 6 rs6000: Update rs6000_builtin_decl rs6000: Miscellaneous uses of rs6000_builtins_decl_x rs6000: Debug support rs6000: Update altivec.h for automated interfaces rs6000: Test case adjustments rs6000: Enable the new builtin support rs6000: Add escape-newline support for builtins files gcc/config/rs6000/altivec.h | 519 +-- gcc/config/rs6000/rs6000-builtin-new.def | 442 ++- gcc/config/rs6000/rs6000-c.c | 1088 ++++++ gcc/config/rs6000/rs6000-call.c | 3132 +++++++++++++++-- gcc/config/rs6000/rs6000-gen-builtins.c | 312 +- gcc/config/rs6000/rs6000.c | 272 +- .../powerpc/bfp/scalar-extract-exp-2.c | 2 +- .../powerpc/bfp/scalar-extract-sig-2.c | 2 +- .../powerpc/bfp/scalar-insert-exp-2.c | 2 +- .../powerpc/bfp/scalar-insert-exp-5.c | 2 +- .../powerpc/bfp/scalar-insert-exp-8.c | 2 +- .../powerpc/bfp/scalar-test-neg-2.c | 2 +- .../powerpc/bfp/scalar-test-neg-3.c | 2 +- .../powerpc/bfp/scalar-test-neg-5.c | 2 +- .../gcc.target/powerpc/byte-in-set-2.c | 2 +- gcc/testsuite/gcc.target/powerpc/cmpb-2.c | 2 +- gcc/testsuite/gcc.target/powerpc/cmpb32-2.c | 2 +- .../gcc.target/powerpc/crypto-builtin-2.c | 14 +- .../powerpc/fold-vec-splat-floatdouble.c | 4 +- .../powerpc/fold-vec-splat-longlong.c | 10 +- .../powerpc/fold-vec-splat-misc-invalid.c | 8 +- .../gcc.target/powerpc/int_128bit-runnable.c | 6 +- .../gcc.target/powerpc/p8vector-builtin-8.c | 1 + gcc/testsuite/gcc.target/powerpc/pr80315-1.c | 2 +- gcc/testsuite/gcc.target/powerpc/pr80315-2.c | 2 +- gcc/testsuite/gcc.target/powerpc/pr80315-3.c | 2 +- gcc/testsuite/gcc.target/powerpc/pr80315-4.c | 2 +- gcc/testsuite/gcc.target/powerpc/pr88100.c | 12 +- .../gcc.target/powerpc/pragma_misc9.c | 2 +- .../gcc.target/powerpc/pragma_power8.c | 2 + .../gcc.target/powerpc/pragma_power9.c | 3 + .../powerpc/test_fpscr_drn_builtin_error.c | 4 +- .../powerpc/test_fpscr_rn_builtin_error.c | 12 +- gcc/testsuite/gcc.target/powerpc/test_mffsl.c | 3 +- gcc/testsuite/gcc.target/powerpc/vec-gnb-2.c | 2 +- .../gcc.target/powerpc/vsu/vec-all-nez-7.c | 2 +- .../gcc.target/powerpc/vsu/vec-any-eqz-7.c | 2 +- .../gcc.target/powerpc/vsu/vec-cmpnez-7.c | 2 +- .../gcc.target/powerpc/vsu/vec-cntlz-lsbb-2.c | 2 +- .../gcc.target/powerpc/vsu/vec-cnttz-lsbb-2.c | 2 +- .../gcc.target/powerpc/vsu/vec-xl-len-13.c | 2 +- .../gcc.target/powerpc/vsu/vec-xst-len-12.c | 2 +- 42 files changed, 4803 insertions(+), 1089 deletions(-) -- 2.27.0