public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH, V2] Do not enable -mblock-ops-vector-pair.
@ 2022-07-25 20:15 Michael Meissner
  2022-08-03 17:53 ` Ping: " Michael Meissner
  2022-08-03 20:11 ` Segher Boessenkool
  0 siblings, 2 replies; 3+ messages in thread
From: Michael Meissner @ 2022-07-25 20:15 UTC (permalink / raw)
  To: gcc-patches, Michael Meissner, Segher Boessenkool, Kewen.Lin,
	David Edelsohn, Peter Bergner, Will Schmidt

Do not enable -mblock-ops-vector-pair.

Testing has shown that using the load vector pair and store vector pair
instructions for block moves has some performance issues on power10.

A patch on June 11th modified the code so that GCC would not set
-mblock-ops-vector-pair by default if we are tuning for power10, but it
would set the option if we were tuning for a different machine and have
load and store vector pair instructions enabled.

This patch eliminates the code setting -mblock-ops-vector-pair.  If you
want to generate load vector pair and store vector pair instructions for
block moves, you must use -mblock-ops-vector-pair.

2022-07-25   Michael Meissner  <meissner@linux.ibm.com>

gcc/

	* config/rs6000/rs6000.cc (rs6000_option_override_internal): Remove
	code setting -mblock-ops-vector-pair.

---
 gcc/config/rs6000/rs6000.cc | 11 -----------
 1 file changed, 11 deletions(-)

diff --git a/gcc/config/rs6000/rs6000.cc b/gcc/config/rs6000/rs6000.cc
index 3ff16b8ae04..667f83b1dfd 100644
--- a/gcc/config/rs6000/rs6000.cc
+++ b/gcc/config/rs6000/rs6000.cc
@@ -4139,17 +4139,6 @@ rs6000_option_override_internal (bool global_init_p)
 	rs6000_isa_flags &= ~OPTION_MASK_BLOCK_OPS_UNALIGNED_VSX;
     }
 
-  if (!(rs6000_isa_flags_explicit & OPTION_MASK_BLOCK_OPS_VECTOR_PAIR))
-    {
-      /* Do not generate lxvp and stxvp on power10 since there are some
-	 performance issues.  */
-      if (TARGET_MMA && TARGET_EFFICIENT_UNALIGNED_VSX
-	  && rs6000_tune != PROCESSOR_POWER10)
-	rs6000_isa_flags |= OPTION_MASK_BLOCK_OPS_VECTOR_PAIR;
-      else
-	rs6000_isa_flags &= ~OPTION_MASK_BLOCK_OPS_VECTOR_PAIR;
-    }
-
   /* Use long double size to select the appropriate long double.  We use
      TYPE_PRECISION to differentiate the 3 different long double types.  We map
      128 into the precision used for TFmode.  */
-- 
2.35.3


-- 
Michael Meissner, IBM
PO Box 98, Ayer, Massachusetts, USA, 01432
email: meissner@linux.ibm.com

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Ping: [PATCH, V2] Do not enable -mblock-ops-vector-pair.
  2022-07-25 20:15 [PATCH, V2] Do not enable -mblock-ops-vector-pair Michael Meissner
@ 2022-08-03 17:53 ` Michael Meissner
  2022-08-03 20:11 ` Segher Boessenkool
  1 sibling, 0 replies; 3+ messages in thread
From: Michael Meissner @ 2022-08-03 17:53 UTC (permalink / raw)
  To: Michael Meissner
  Cc: gcc-patches, Segher Boessenkool, Kewen.Lin, David Edelsohn,
	Peter Bergner, Will Schmidt

Ping patch.

| Date: Mon, 25 Jul 2022 16:15:05 -0400
| Subject: [PATCH, V2] Do not enable -mblock-ops-vector-pair.
| Message-ID: <Yt75yUWKIqoWI5kZ@toto.the-meissners.org>

-- 
Michael Meissner, IBM
PO Box 98, Ayer, Massachusetts, USA, 01432
email: meissner@linux.ibm.com

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH, V2] Do not enable -mblock-ops-vector-pair.
  2022-07-25 20:15 [PATCH, V2] Do not enable -mblock-ops-vector-pair Michael Meissner
  2022-08-03 17:53 ` Ping: " Michael Meissner
@ 2022-08-03 20:11 ` Segher Boessenkool
  1 sibling, 0 replies; 3+ messages in thread
From: Segher Boessenkool @ 2022-08-03 20:11 UTC (permalink / raw)
  To: Michael Meissner, gcc-patches, Kewen.Lin, David Edelsohn,
	Peter Bergner, Will Schmidt

Hi Mike,

On Mon, Jul 25, 2022 at 04:15:05PM -0400, Michael Meissner wrote:
> Testing has shown that using the load vector pair and store vector pair
> instructions for block moves has some performance issues on power10.

> This patch eliminates the code setting -mblock-ops-vector-pair.  If you
> want to generate load vector pair and store vector pair instructions for
> block moves, you must use -mblock-ops-vector-pair.
> 
> 2022-07-25   Michael Meissner  <meissner@linux.ibm.com>
> 
> gcc/
> 
> 	* config/rs6000/rs6000.cc (rs6000_option_override_internal): Remove
> 	code setting -mblock-ops-vector-pair.

Okay for trunk (and any backports you may need).  Thanks!


Segher

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2022-08-03 20:12 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-25 20:15 [PATCH, V2] Do not enable -mblock-ops-vector-pair Michael Meissner
2022-08-03 17:53 ` Ping: " Michael Meissner
2022-08-03 20:11 ` Segher Boessenkool

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).