From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1005) id 3CC273858C32; Thu, 29 Feb 2024 18:25:55 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 3CC273858C32 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1709231155; bh=I4nW4dnny1AYfwoB9zjW/ORwbn4AW4wdlfJORGUWeVQ=; h=From:To:Subject:Date:From; b=xqN+YYGKz/3H5H/Azb2BAE9wT9iZSDfvYWcQ8ESdMtaa7QqCLAsHCDOK86xQvCxJq MU8qObjD6ILUfq/ZN8vCnPtEeHepOw03sLytMEZqKgyLj5Z2N5FhjWsSwRiY0bHdnE tgINCV6uXM9rAhb2/UpoBezRlusVQ5iaPyiX1TYU= Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Michael Meissner To: gcc-cvs@gcc.gnu.org Subject: [gcc(refs/users/meissner/heads/work161-dmf)] Use vector pair load/store for memcpy with -mcpu=future X-Act-Checkin: gcc X-Git-Author: Michael Meissner X-Git-Refname: refs/users/meissner/heads/work161-dmf X-Git-Oldrev: 6270d2642f01c6d59109d9f9b1db89922513c72f X-Git-Newrev: b6b2c54082d928eb1bed7cadb8c2959a848940d2 Message-Id: <20240229182555.3CC273858C32@sourceware.org> Date: Thu, 29 Feb 2024 18:25:55 +0000 (GMT) List-Id: https://gcc.gnu.org/g:b6b2c54082d928eb1bed7cadb8c2959a848940d2 commit b6b2c54082d928eb1bed7cadb8c2959a848940d2 Author: Michael Meissner Date: Thu Feb 29 13:16:35 2024 -0500 Use vector pair load/store for memcpy with -mcpu=future In the development for the power10 processor, GCC did not enable using the load vector pair and store vector pair instructions when optimizing things like memory copy. This patch enables using those instructions if -mcpu=future is used. 2024-02-29 Michael Meissner gcc/ * config/rs6000/rs6000-cpus.def (ISA_FUTURE_MASKS_SERVER): Enable using load vector pair and store vector pair instructions for memory copy operations. (POWERPC_MASKS): Make the bit for enabling using load vector pair and store vector pair operations set and reset when the PowerPC processor is changed. Diff: --- gcc/config/rs6000/rs6000-cpus.def | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gcc/config/rs6000/rs6000-cpus.def b/gcc/config/rs6000/rs6000-cpus.def index 77170915615..8da1d560e49 100644 --- a/gcc/config/rs6000/rs6000-cpus.def +++ b/gcc/config/rs6000/rs6000-cpus.def @@ -92,6 +92,7 @@ /* Flags for a potential future processor that may or may not be made. */ #define ISA_FUTURE_MASKS_SERVER (ISA_POWER11_MASKS_SERVER \ + | OPTION_MASK_BLOCK_OPS_VECTOR_PAIR \ | OPTION_MASK_FUTURE) /* Flags that need to be turned off if -mno-vsx. */ @@ -123,6 +124,7 @@ /* Mask of all options to set the default isa flags based on -mcpu=. */ #define POWERPC_MASKS (OPTION_MASK_ALTIVEC \ + | OPTION_MASK_BLOCK_OPS_VECTOR_PAIR \ | OPTION_MASK_CMPB \ | OPTION_MASK_CRYPTO \ | OPTION_MASK_DFP \