From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1005) id 6D8E43858CD1; Tue, 5 Mar 2024 04:54:02 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 6D8E43858CD1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1709614442; bh=2Pbt20eZhn8fbNo6ZvcA/59aJR5iLDloC32sbs0fyls=; h=From:To:Subject:Date:From; b=mQRy2EjujQsiPlpGFYG9QEoWBy+PDT0iNAjePdJ+u/gUsCB0aaO8+/xnGmaNIpEEi 3bbt6FsYV2ox/bwO2waWeIh7FQtLR5dIkLUX9bE/Wobs9yOepzoivx8ibBDIf+j1of DJAKphUlvxdx3N+6FdZiRMar4AkMRaerT6505je4= 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: 7534cac4935096b6146192f65dc7eaeabc98b2e1 X-Git-Newrev: 0e4e5e62987bd34a283cbecf6bba7db04d277a5e Message-Id: <20240305045402.6D8E43858CD1@sourceware.org> Date: Tue, 5 Mar 2024 04:54:02 +0000 (GMT) List-Id: https://gcc.gnu.org/g:0e4e5e62987bd34a283cbecf6bba7db04d277a5e commit 0e4e5e62987bd34a283cbecf6bba7db04d277a5e Author: Michael Meissner Date: Mon Mar 4 23:53:27 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-03-04 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 \