From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1005) id 03C3B3858413; Thu, 29 Feb 2024 18:20:21 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 03C3B3858413 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1709230822; bh=AxwoEK9s1RWSbub6lQp/gEKbuDXHHQKBD2GSyj5ojtM=; h=From:To:Subject:Date:From; b=s4sTslTbfofOCIUN1PicL/+hk+BUFVRFfUogErKMkfTmSCClAbzJM348avPrudtrE jWEol2BBtoQ24agSMrOUAa5WE4lAwUD0JdONT7FBLOWiTnZH9R71HLrgNnM7STq6rl PUaeWWdfH9brE8xqYkq3Gsr/ImmW3e9OkgkIGVV0= 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: e5c7191cd51208ae1e18301a5e0745f783514aa4 X-Git-Newrev: 958eeaa435a9e11a275f9331237b22a714562000 Message-Id: <20240229182022.03C3B3858413@sourceware.org> Date: Thu, 29 Feb 2024 18:20:21 +0000 (GMT) List-Id: https://gcc.gnu.org/g:958eeaa435a9e11a275f9331237b22a714562000 commit 958eeaa435a9e11a275f9331237b22a714562000 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 \