public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc(refs/users/meissner/heads/work044)] Add xxspltiw support to output_vec_const_move.
@ 2021-04-06 18:06 Michael Meissner
  0 siblings, 0 replies; only message in thread
From: Michael Meissner @ 2021-04-06 18:06 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:d7f7bd3912aab39895aad68a6574acc7fa0e199d

commit d7f7bd3912aab39895aad68a6574acc7fa0e199d
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Tue Apr 6 14:04:49 2021 -0400

    Add xxspltiw support to output_vec_const_move.
    
    This adds support for XXSPLTIW to the generic vector load constant
    support.
    
    gcc/
    2021-04-06  Michael Meissner  <meissner@linux.ibm.com>
    
            * config/rs6000/rs6000.c (output_vec_const_move): Add XXSPLTIW
            support.

Diff:
---
 gcc/config/rs6000/rs6000.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index ec54c9dc0c4..cc92690f5d6 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -6580,6 +6580,16 @@ output_vec_const_move (rtx *operands)
 	    gcc_unreachable ();
 	}
 
+      long xxspltiw_value = 0;
+      if (xxspltiw_constant_p (vec, mode, &xxspltiw_value))
+	{
+	  operands[2] = GEN_INT (xxspltiw_value);
+	  return (mode == V4SImode && dest_vmx_p
+		  && IN_RANGE (xxspltiw_value, -16, 15)
+		  ? "vspltisw %0,%2"
+		  : "xxspltiw %x0,%2");
+	}
+
       if (TARGET_P9_VECTOR
 	  && xxspltib_constant_p (vec, mode, &num_insns, &xxspltib_value))
 	{


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-04-06 18:06 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-06 18:06 [gcc(refs/users/meissner/heads/work044)] Add xxspltiw support to output_vec_const_move Michael Meissner

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).