public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc(refs/users/meissner/heads/work141-vpair)] Update ChangeLog.*
@ 2023-10-31 21:13 Michael Meissner
  0 siblings, 0 replies; 9+ messages in thread
From: Michael Meissner @ 2023-10-31 21:13 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:643a33fca22a14cd6b09272e3fe083eb8a3058c0

commit 643a33fca22a14cd6b09272e3fe083eb8a3058c0
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Tue Oct 31 17:13:55 2023 -0400

    Update ChangeLog.*

Diff:
---
 gcc/ChangeLog.vpair | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gcc/ChangeLog.vpair b/gcc/ChangeLog.vpair
index 86db6581b17c..62ccc85b6bcb 100644
--- a/gcc/ChangeLog.vpair
+++ b/gcc/ChangeLog.vpair
@@ -1,3 +1,25 @@
+==================== Branch work141-vpair, patch #325 ====================
+
+Add overloads for __builtin_vpair_assemble.
+
+2023-10-31  Michael Meissner  <meissner@linux.ibm.com>
+
+gcc/
+
+	* config/rs6000/rs6000-overloads.def (__builtin_vpair_assemble): Add
+	overloads.
+
+==================== Branch work141-vpair, patch #323 ====================
+
+Fix spacing.
+
+2023-10-31  Michael Meissner  <meissner@linux.ibm.com>
+
+gcc/
+
+	* config/rs6000/rs6000-builtins.def (__builtin_vpair_f64_assemble): Fix
+	spacing.
+
 ==================== Branch work141-vpair, patch #323 ====================
 
 Add vector pair add elements built-in functions.

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

* [gcc(refs/users/meissner/heads/work141-vpair)] Update ChangeLog.*
@ 2023-11-07 19:22 Michael Meissner
  0 siblings, 0 replies; 9+ messages in thread
From: Michael Meissner @ 2023-11-07 19:22 UTC (permalink / raw)
  To: gcc-cvs

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

commit ade33abd9581635425f5a26efb71dccdf245809f
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Tue Nov 7 14:22:00 2023 -0500

    Update ChangeLog.*

Diff:
---
 gcc/ChangeLog.vpair | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/gcc/ChangeLog.vpair b/gcc/ChangeLog.vpair
index f0b92c2ee77..116f82f3b96 100644
--- a/gcc/ChangeLog.vpair
+++ b/gcc/ChangeLog.vpair
@@ -1,3 +1,13 @@
+==================== Branch work141-vpair, patch #346 ====================
+
+Update vector pair documentation.
+
+2023-11-07  Michael Meissner  <meissner@linux.ibm.com>
+
+gcc/
+
+	* config/doc/extend.texi (PowerPC built-ins): Update documentation.
+
 ==================== Branch work141-vpair, patch #345 ====================
 
 Add overloads for __builtin_vpair_assemble.

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

* [gcc(refs/users/meissner/heads/work141-vpair)] Update ChangeLog.*
@ 2023-11-02  4:24 Michael Meissner
  0 siblings, 0 replies; 9+ messages in thread
From: Michael Meissner @ 2023-11-02  4:24 UTC (permalink / raw)
  To: gcc-cvs

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

commit ce6343798666012481bdc9a9c299288058bae53a
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Thu Nov 2 00:24:15 2023 -0400

    Update ChangeLog.*

Diff:
---
 gcc/ChangeLog.vpair | 212 +++++++++++++++++++++++++++++++++++++++++++++++-----
 1 file changed, 193 insertions(+), 19 deletions(-)

diff --git a/gcc/ChangeLog.vpair b/gcc/ChangeLog.vpair
index 0fc3c1e92b94..f0b92c2ee77a 100644
--- a/gcc/ChangeLog.vpair
+++ b/gcc/ChangeLog.vpair
@@ -1,40 +1,214 @@
-==================== Branch work141-vpair, patch #336 was reverted ====================
+==================== Branch work141-vpair, patch #345 ====================
 
-==================== Branch work141-vpair, patch #335 was reverted ====================
+Add overloads for __builtin_vpair_assemble.
 
-==================== Branch work141-vpair, patch #334 was reverted ====================
+2023-11-02  Michael Meissner  <meissner@linux.ibm.com>
 
-==================== Branch work141-vpair, patch #333 was reverted ====================
+gcc/
+
+	* config/rs6000/rs6000-overloads.def (__builtin_vpair_assemble): Add
+	overloads.
+
+==================== Branch work141-vpair, patch #344 ====================
 
-==================== Branch work141-vpair, patch #332 was reverted ====================
+Add support for doing a horizontal add on vector pair elements.
 
-==================== Branch work141-vpair, patch #331 was reverted ====================
+This patch adds a series of built-in functions to allow users to write code to
+do a number of simple operations where the loop is done using the __vector_pair
+type.  The __vector_pair type is an opaque type.  These built-in functions keep
+the two 128-bit vectors within the __vector_pair together, and split the
+operation after register allocation.
 
-==================== Branch work141-vpair, patch #325 was reverted ====================
+This patch provides vector pair built-in functions to do a horizontal add on
+vector pair elements.  Only floating point and 64-bit horizontal adds are
+provided in this patch.
 
-==================== Branch work141-vpair, patch #323 was reverted ====================
+2023-11-01  Michael Meissner  <meissner@linux.ibm.com>
 
-==================== Branch work141-vpair, patch #323 was reverted ====================
+gcc/
+
+	* config/rs6000/rs6000-builtins.def (__builtin_vpair_f32_add_elements):
+	New built-in function.
+	(__builtin_vpair_f64_add_elements): Likewise.
+	(__builtin_vpair_i64_add_elements): Likewise.
+	(__builtin_vpair_i64u_add_elements): Likewise.
+	* config/rs6000/vector-pair.md (UNSPEC_VPAIR_REDUCE_PLUS_F32): New
+	unspec.
+	(UNSPEC_VPAIR_REDUCE_PLUS_F64): Likewise.
+	(UNSPEC_VPAIR_REDUCE_PLUS_I64): Likewise.
+	(vpair_reduc_plus_scale_v8sf): New insn.
+	(vpair_reduc_plus_scale_v4df): Likewise.
+	(vpair_reduc_plus_scale_v4di): Likewise.
+	* doc/extend.texi (__builtin_vpair_f32_add_elements): Document.
+	(__builtin_vpair_f64_add_elements): Likewise.
+	(__builtin_vpair_i64_add_elements): Likewise.
 
-==================== Branch work141-vpair, patch #322 was reverted ====================
+gcc/testsuite/
 
-==================== Branch work141-vpair, patch #321 was reverted ====================
+	* gcc.target/powerpc/vector-pair-16.c: New test.
 
-==================== Branch work141-vpair, patch #320 was reverted ====================
+==================== Branch work141-vpair, patch #343 ====================
 
-==================== Branch work141-vpair, patch #312 was reverted ====================
+Add support for initializing and extracting from vector pairs.
 
-==================== Branch work141-vpair, patch #311 was reverted ====================
+This patch adds a series of built-in functions to allow users to write code to
+do a number of simple operations where the loop is done using the __vector_pair
+type.  The __vector_pair type is an opaque type.  These built-in functions keep
+the two 128-bit vectors within the __vector_pair together, and split the
+operation after register allocation.
 
-==================== Branch work141-vpair, patch #310 was reverted ====================
+This patch provides vector pair operations for loading up a vector pair with all
+0's, duplicated (splat) from a scalar type, or combining two vectors in a vector
+pair.  This patch also provides vector pair builtins to extract one vector
+element of a vector pair.
 
-==================== Branch work141-vpair, patch #303 was reverted ====================
+2023-11-02  Michael Meissner  <meissner@linux.ibm.com>
 
-==================== Branch work141-vpair, patch #302 was reverted ====================
+gcc/
 
-==================== Branch work141-vpair, patch #301 was reverted ====================
+	* config/rs6000/predicates.md (mma_assemble_input_operand): Allow any
+	16-byte vector, not just V16QImode.
+	* config/rs6000/rs6000-builtins.def (__builtin_vpair_zero): New vector
+	pair initialization built-in functions.
+	(__builtin_vpair_*_assemble): Likeise.
+	(__builtin_vpair_*_splat): Likeise.
+	(__builtin_vpair_*_extract_vector): New vector pair extraction built-in
+	functions.
+	* config/rs6000/vector-pair.md (UNSPEC_VPAIR_V32QI): New unspec.
+	(UNSPEC_VPAIR_V16HI): Likewise.
+	(UNSPEC_VPAIR_V8SI): Likewise.
+	(UNSPEC_VPAIR_V4DI): Likewise.
+	(VP_INT_BINARY): New iterator for integer vector pair.
+	(vp_insn): Add supoort for integer vector pairs.
+	(vp_ireg): New code attribute for integer vector pairs.
+	(vp_ipredicate): Likewise.
+	(VP_INT): New int interator for integer vector pairs.
+	(VP_VEC_MODE): Likewise.
+	(vp_pmode): Likewise.
+	(vp_vmode): Likewise.
+	(vp_neg_reg): New int interator for integer vector pairs.
+	(vpair_neg_<vp_pmode>): Add integer vector pair support insns.
+	(vpair_not_<vp_pmode>2): Likewise.
+	(vpair_<vp_insn>_<vp_pmode>3): Likewise.
+	(vpair_andc_<vp_pmode): Likewise.
+	(*vpair_iorc_<vp_pmode>): Likewise.
+	(vpair_nand_<vp_pmode>_1): Likewise.
+	(vpair_nand_<vp_pmode>_2): Likewise.
+	(vpair_nor_<vp_pmode>_1): Likewise.
+	(vpair_nor_<vp_pmode>_2): Likewise.
+	* doc/extend.texi (PowerPC Vector Pair Built-in Functions): Document the
+	integer vector pair built-in functions.
+
+gcc/testsuite/
+
+	* gcc.target/powerpc/vector-pair-5.c: New test.
+	* gcc.target/powerpc/vector-pair-6.c: New test.
+	* gcc.target/powerpc/vector-pair-7.c: New test.
+	* gcc.target/powerpc/vector-pair-8.c: New test.
+
+
+==================== Branch work141-vpair, patch #342 ====================
+
+Add support for integer point vector pair built-in functions.
+
+This patch adds a series of built-in functions to allow users to write code to
+do a number of simple operations where the loop is done using the __vector_pair
+type.  The __vector_pair type is an opaque type.  These built-in functions keep
+the two 128-bit vectors within the __vector_pair together, and split the
+operation after register allocation.
+
+This patch provides vector pair operations for 8, 16, 32, and 64-bit integers.
+
+2023-11-02  Michael Meissner  <meissner@linux.ibm.com>
+
+gcc/
+
+	* config/rs6000/rs6000-builtins.def (__builtin_vpair_i8*): Add built-in
+	functions for integer vector pairs.
+	(__builtin_vpair_i16*): Likeise.
+	(__builtin_vpair_i32*): Likeise.
+	(__builtin_vpair_i64*): Likeise.
+	* config/rs6000/vector-pair.md (UNSPEC_VPAIR_V32QI): New unspec.
+	(UNSPEC_VPAIR_V16HI): Likewise.
+	(UNSPEC_VPAIR_V8SI): Likewise.
+	(UNSPEC_VPAIR_V4DI): Likewise.
+	(VP_INT_BINARY): New iterator for integer vector pair.
+	(vp_insn): Add supoort for integer vector pairs.
+	(vp_ireg): New code attribute for integer vector pairs.
+	(vp_ipredicate): Likewise.
+	(VP_INT): New int interator for integer vector pairs.
+	(VP_VEC_MODE): Likewise.
+	(vp_pmode): Likewise.
+	(vp_vmode): Likewise.
+	(vp_neg_reg): New int interator for integer vector pairs.
+	(vpair_neg_<vp_pmode>): Add integer vector pair support insns.
+	(vpair_not_<vp_pmode>2): Likewise.
+	(vpair_<vp_insn>_<vp_pmode>3): Likewise.
+	(vpair_andc_<vp_pmode): Likewise.
+	(*vpair_iorc_<vp_pmode>): Likewise.
+	(vpair_nand_<vp_pmode>_1): Likewise.
+	(vpair_nand_<vp_pmode>_2): Likewise.
+	(vpair_nor_<vp_pmode>_1): Likewise.
+	(vpair_nor_<vp_pmode>_2): Likewise.
+	* doc/extend.texi (PowerPC Vector Pair Built-in Functions): Document the
+	integer vector pair built-in functions.
+
+gcc/testsuite/
+
+	* gcc.target/powerpc/vector-pair-5.c: New test.
+	* gcc.target/powerpc/vector-pair-6.c: New test.
+	* gcc.target/powerpc/vector-pair-7.c: New test.
+	* gcc.target/powerpc/vector-pair-8.c: New test.
+
+
+==================== Branch work141-vpair, patch #341 ====================
+
+Add support for floating point vector pair built-in functions.
+
+This patch adds a series of built-in functions to allow users to write code to
+do a number of simple operations where the loop is done using the __vector_pair
+type.  The __vector_pair type is an opaque type.  These built-in functions keep
+the two 128-bit vectors within the __vector_pair together, and split the
+operation after register allocation.
+
+This patch provides vector pair operations for 32-bit floating point and 64-bit
+floating point.
+
+2023-11-02  Michael Meissner  <meissner@linux.ibm.com>
+
+gcc/
 
-==================== Branch work141-vpair, patch #300 was reverted ====================
+	* config/rs6000/rs6000-builtins.def (__builtin_vpair_f32_*): Add vector
+	pair built-in functions for float.
+	(__builtin_vpair_f64_*): Add vector pair built-in functions for double.
+	* config/rs6000/rs6000-protos.h (split_unary_vector_pair): Add
+	declaration.
+	(split_binary_vector_pair): Likewise.
+	(split_fma_vector_pair): Likewise.
+	* config/rs6000/rs6000.cc (split_unary_vector_pair): New helper function
+	for vector pair built-in functions.
+	(split_binary_vector_pair): Likewise.
+	(split_fma_vector_pair): Likewise.
+	* config/rs6000/rs6000.md (toplevel): Include vector-pair.md.
+	* config/rs6000/t-rs6000 (MD_INCLUDES): Add vector-pair.md.
+	* config/rs6000/vector-pair.md: New file.
+	* doc/extend.texi (PowerPC Vector Pair Built-in Functions): Document the
+	floating point and general vector pair built-in functions.
+
+gcc/testsuite/
+
+	* gcc.target/powerpc/vector-pair-1.c: New test.
+	* gcc.target/powerpc/vector-pair-2.c: New test.
+	* gcc.target/powerpc/vector-pair-3.c: New test.
+	* gcc.target/powerpc/vector-pair-4.c: New test.
+
+==================== Branch work141-vpair, patches #331-336 were reverted ====================
+
+==================== Branch work141-vpair, patches #300-325 were reverted ====================
+
+==================== Branch work141-vpair, patches #310-312 were reverted ====================
+
+==================== Branch work141-vpair, patches #300-303 were reverted ====================
 
 ==================== Branch work141-vpair, baseline ====================

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

* [gcc(refs/users/meissner/heads/work141-vpair)] Update ChangeLog.*
@ 2023-11-02  3:28 Michael Meissner
  0 siblings, 0 replies; 9+ messages in thread
From: Michael Meissner @ 2023-11-02  3:28 UTC (permalink / raw)
  To: gcc-cvs

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

commit dd6a16c886a831c259e0ec5647a21ae721e03ce8
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Wed Nov 1 23:28:19 2023 -0400

    Update ChangeLog.*

Diff:
---
 gcc/ChangeLog.vpair | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/gcc/ChangeLog.vpair b/gcc/ChangeLog.vpair
index cfe5ec34f0d3..572c467384a8 100644
--- a/gcc/ChangeLog.vpair
+++ b/gcc/ChangeLog.vpair
@@ -1,3 +1,13 @@
+==================== Branch work141-vpair, patch #336 ====================
+
+Fix typo in test.
+
+2023-11-01  Michael Meissner  <meissner@linux.ibm.com>
+
+gcc/testsuite/
+
+	* gcc.target/powerpc/vector-pair-1.c: Fix typo.
+
 ==================== Branch work141-vpair, patch #335 ====================
 
 Add support for doing a horizontal add on vector pair elements.

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

* [gcc(refs/users/meissner/heads/work141-vpair)] Update ChangeLog.*
@ 2023-11-01 20:14 Michael Meissner
  0 siblings, 0 replies; 9+ messages in thread
From: Michael Meissner @ 2023-11-01 20:14 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:78b08c6ecadb5be68f9a448c0459a5420dfd95d4

commit 78b08c6ecadb5be68f9a448c0459a5420dfd95d4
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Wed Nov 1 16:14:31 2023 -0400

    Update ChangeLog.*

Diff:
---
 gcc/ChangeLog.vpair | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/gcc/ChangeLog.vpair b/gcc/ChangeLog.vpair
index 2054162ff9ed..cfe5ec34f0d3 100644
--- a/gcc/ChangeLog.vpair
+++ b/gcc/ChangeLog.vpair
@@ -1,4 +1,4 @@
-==================== Branch work141-vpair, patch #334 was reverted ====================
+==================== Branch work141-vpair, patch #335 ====================
 
 Add support for doing a horizontal add on vector pair elements.
 
@@ -36,7 +36,7 @@ gcc/testsuite/
 
 	* gcc.target/powerpc/vector-pair-16.c: New test.
 
-==================== Branch work141-vpair, patch #333 was reverted ====================
+==================== Branch work141-vpair, patch #334 ====================
 
 Add support for initializing and extracting from vector pairs.
 
@@ -88,6 +88,12 @@ gcc/
 	* doc/extend.texi (PowerPC Vector Pair Built-in Functions): Document the
 	integer vector pair built-in functions.
 
+==================== Branch work141-vpair, patch #333 ====================
+
+Add tests for previous patch.
+
+2023-11-01  Michael Meissner  <meissner@linux.ibm.com>
+
 gcc/testsuite/
 
 	* gcc.target/powerpc/vector-pair-5.c: New test.
@@ -95,8 +101,7 @@ gcc/testsuite/
 	* gcc.target/powerpc/vector-pair-7.c: New test.
 	* gcc.target/powerpc/vector-pair-8.c: New test.
 
-
-==================== Branch work141-vpair, patch #332 was reverted ====================
+==================== Branch work141-vpair, patch #332 ====================
 
 Add support for integer point vector pair built-in functions.
 
@@ -150,7 +155,7 @@ gcc/testsuite/
 	* gcc.target/powerpc/vector-pair-8.c: New test.
 
 
-==================== Branch work141-vpair, patch #331 was reverted ====================
+==================== Branch work141-vpair, patch #331 ====================
 
 Add support for floating point vector pair built-in functions.

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

* [gcc(refs/users/meissner/heads/work141-vpair)] Update ChangeLog.*
@ 2023-11-01 17:47 Michael Meissner
  0 siblings, 0 replies; 9+ messages in thread
From: Michael Meissner @ 2023-11-01 17:47 UTC (permalink / raw)
  To: gcc-cvs

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

commit d0f51e70b40baf918665bc9dd10e53b339ce9fa1
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Wed Nov 1 13:47:15 2023 -0400

    Update ChangeLog.*

Diff:
---
 gcc/ChangeLog.vpair | 193 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 193 insertions(+)

diff --git a/gcc/ChangeLog.vpair b/gcc/ChangeLog.vpair
index ce02ae4b89b4..2054162ff9ed 100644
--- a/gcc/ChangeLog.vpair
+++ b/gcc/ChangeLog.vpair
@@ -1,3 +1,196 @@
+==================== Branch work141-vpair, patch #334 was reverted ====================
+
+Add support for doing a horizontal add on vector pair elements.
+
+This patch adds a series of built-in functions to allow users to write code to
+do a number of simple operations where the loop is done using the __vector_pair
+type.  The __vector_pair type is an opaque type.  These built-in functions keep
+the two 128-bit vectors within the __vector_pair together, and split the
+operation after register allocation.
+
+This patch provides vector pair built-in functions to do a horizontal add on
+vector pair elements.  Only floating point and 64-bit horizontal adds are
+provided in this patch.
+
+2023-11-01  Michael Meissner  <meissner@linux.ibm.com>
+
+gcc/
+
+	* config/rs6000/rs6000-builtins.def (__builtin_vpair_f32_add_elements):
+	New built-in function.
+	(__builtin_vpair_f64_add_elements): Likewise.
+	(__builtin_vpair_i64_add_elements): Likewise.
+	(__builtin_vpair_i64u_add_elements): Likewise.
+	* config/rs6000/vector-pair.md (UNSPEC_VPAIR_REDUCE_PLUS_F32): New
+	unspec.
+	(UNSPEC_VPAIR_REDUCE_PLUS_F64): Likewise.
+	(UNSPEC_VPAIR_REDUCE_PLUS_I64): Likewise.
+	(vpair_reduc_plus_scale_v8sf): New insn.
+	(vpair_reduc_plus_scale_v4df): Likewise.
+	(vpair_reduc_plus_scale_v4di): Likewise.
+	* doc/extend.texi (__builtin_vpair_f32_add_elements): Document.
+	(__builtin_vpair_f64_add_elements): Likewise.
+	(__builtin_vpair_i64_add_elements): Likewise.
+
+gcc/testsuite/
+
+	* gcc.target/powerpc/vector-pair-16.c: New test.
+
+==================== Branch work141-vpair, patch #333 was reverted ====================
+
+Add support for initializing and extracting from vector pairs.
+
+This patch adds a series of built-in functions to allow users to write code to
+do a number of simple operations where the loop is done using the __vector_pair
+type.  The __vector_pair type is an opaque type.  These built-in functions keep
+the two 128-bit vectors within the __vector_pair together, and split the
+operation after register allocation.
+
+This patch provides vector pair operations for loading up a vector pair with all
+0's, duplicated (splat) from a scalar type, or combining two vectors in a vector
+pair.  This patch also provides vector pair builtins to extract one vector
+element of a vector pair.
+
+2023-11-01  Michael Meissner  <meissner@linux.ibm.com>
+
+gcc/
+
+	* config/rs6000/predicates.md (mma_assemble_input_operand): Allow any
+	16-byte vector, not just V16QImode.
+	* config/rs6000/rs6000-builtins.def (__builtin_vpair_zero): New vector
+	pair initialization built-in functions.
+	(__builtin_vpair_*_assemble): Likeise.
+	(__builtin_vpair_*_splat): Likeise.
+	(__builtin_vpair_*_extract_vector): New vector pair extraction built-in
+	functions.
+	* config/rs6000/vector-pair.md (UNSPEC_VPAIR_V32QI): New unspec.
+	(UNSPEC_VPAIR_V16HI): Likewise.
+	(UNSPEC_VPAIR_V8SI): Likewise.
+	(UNSPEC_VPAIR_V4DI): Likewise.
+	(VP_INT_BINARY): New iterator for integer vector pair.
+	(vp_insn): Add supoort for integer vector pairs.
+	(vp_ireg): New code attribute for integer vector pairs.
+	(vp_ipredicate): Likewise.
+	(VP_INT): New int interator for integer vector pairs.
+	(VP_VEC_MODE): Likewise.
+	(vp_pmode): Likewise.
+	(vp_vmode): Likewise.
+	(vp_neg_reg): New int interator for integer vector pairs.
+	(vpair_neg_<vp_pmode>): Add integer vector pair support insns.
+	(vpair_not_<vp_pmode>2): Likewise.
+	(vpair_<vp_insn>_<vp_pmode>3): Likewise.
+	(vpair_andc_<vp_pmode): Likewise.
+	(*vpair_iorc_<vp_pmode>): Likewise.
+	(vpair_nand_<vp_pmode>_1): Likewise.
+	(vpair_nand_<vp_pmode>_2): Likewise.
+	(vpair_nor_<vp_pmode>_1): Likewise.
+	(vpair_nor_<vp_pmode>_2): Likewise.
+	* doc/extend.texi (PowerPC Vector Pair Built-in Functions): Document the
+	integer vector pair built-in functions.
+
+gcc/testsuite/
+
+	* gcc.target/powerpc/vector-pair-5.c: New test.
+	* gcc.target/powerpc/vector-pair-6.c: New test.
+	* gcc.target/powerpc/vector-pair-7.c: New test.
+	* gcc.target/powerpc/vector-pair-8.c: New test.
+
+
+==================== Branch work141-vpair, patch #332 was reverted ====================
+
+Add support for integer point vector pair built-in functions.
+
+This patch adds a series of built-in functions to allow users to write code to
+do a number of simple operations where the loop is done using the __vector_pair
+type.  The __vector_pair type is an opaque type.  These built-in functions keep
+the two 128-bit vectors within the __vector_pair together, and split the
+operation after register allocation.
+
+This patch provides vector pair operations for 8, 16, 32, and 64-bit integers.
+
+2023-11-01  Michael Meissner  <meissner@linux.ibm.com>
+
+gcc/
+
+	* config/rs6000/rs6000-builtins.def (__builtin_vpair_i8*): Add built-in
+	functions for integer vector pairs.
+	(__builtin_vpair_i16*): Likeise.
+	(__builtin_vpair_i32*): Likeise.
+	(__builtin_vpair_i64*): Likeise.
+	* config/rs6000/vector-pair.md (UNSPEC_VPAIR_V32QI): New unspec.
+	(UNSPEC_VPAIR_V16HI): Likewise.
+	(UNSPEC_VPAIR_V8SI): Likewise.
+	(UNSPEC_VPAIR_V4DI): Likewise.
+	(VP_INT_BINARY): New iterator for integer vector pair.
+	(vp_insn): Add supoort for integer vector pairs.
+	(vp_ireg): New code attribute for integer vector pairs.
+	(vp_ipredicate): Likewise.
+	(VP_INT): New int interator for integer vector pairs.
+	(VP_VEC_MODE): Likewise.
+	(vp_pmode): Likewise.
+	(vp_vmode): Likewise.
+	(vp_neg_reg): New int interator for integer vector pairs.
+	(vpair_neg_<vp_pmode>): Add integer vector pair support insns.
+	(vpair_not_<vp_pmode>2): Likewise.
+	(vpair_<vp_insn>_<vp_pmode>3): Likewise.
+	(vpair_andc_<vp_pmode): Likewise.
+	(*vpair_iorc_<vp_pmode>): Likewise.
+	(vpair_nand_<vp_pmode>_1): Likewise.
+	(vpair_nand_<vp_pmode>_2): Likewise.
+	(vpair_nor_<vp_pmode>_1): Likewise.
+	(vpair_nor_<vp_pmode>_2): Likewise.
+	* doc/extend.texi (PowerPC Vector Pair Built-in Functions): Document the
+	integer vector pair built-in functions.
+
+gcc/testsuite/
+
+	* gcc.target/powerpc/vector-pair-5.c: New test.
+	* gcc.target/powerpc/vector-pair-6.c: New test.
+	* gcc.target/powerpc/vector-pair-7.c: New test.
+	* gcc.target/powerpc/vector-pair-8.c: New test.
+
+
+==================== Branch work141-vpair, patch #331 was reverted ====================
+
+Add support for floating point vector pair built-in functions.
+
+This patch adds a series of built-in functions to allow users to write code to
+do a number of simple operations where the loop is done using the __vector_pair
+type.  The __vector_pair type is an opaque type.  These built-in functions keep
+the two 128-bit vectors within the __vector_pair together, and split the
+operation after register allocation.
+
+This patch provides vector pair operations for 32-bit floating point and 64-bit
+floating point.
+
+2023-11-01  Michael Meissner  <meissner@linux.ibm.com>
+
+gcc/
+
+	* config/rs6000/rs6000-builtins.def (__builtin_vpair_f32_*): Add vector
+	pair built-in functions for float.
+	(__builtin_vpair_f64_*): Add vector pair built-in functions for double.
+	* config/rs6000/rs6000-protos.h (split_unary_vector_pair): Add
+	declaration.
+	(split_binary_vector_pair): Likewise.
+	(split_fma_vector_pair): Likewise.
+	* config/rs6000/rs6000.cc (split_unary_vector_pair): New helper function
+	for vector pair built-in functions.
+	(split_binary_vector_pair): Likewise.
+	(split_fma_vector_pair): Likewise.
+	* config/rs6000/rs6000.md (toplevel): Include vector-pair.md.
+	* config/rs6000/t-rs6000 (MD_INCLUDES): Add vector-pair.md.
+	* config/rs6000/vector-pair.md: New file.
+	* doc/extend.texi (PowerPC Vector Pair Built-in Functions): Document the
+	floating point and general vector pair built-in functions.
+
+gcc/testsuite/
+
+	* gcc.target/powerpc/vector-pair-1.c: New test.
+	* gcc.target/powerpc/vector-pair-2.c: New test.
+	* gcc.target/powerpc/vector-pair-3.c: New test.
+	* gcc.target/powerpc/vector-pair-4.c: New test.
+
 ==================== Branch work141-vpair, patch #325 was reverted ====================
 
 ==================== Branch work141-vpair, patch #323 was reverted ====================

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

* [gcc(refs/users/meissner/heads/work141-vpair)] Update ChangeLog.*
@ 2023-10-27 18:50 Michael Meissner
  0 siblings, 0 replies; 9+ messages in thread
From: Michael Meissner @ 2023-10-27 18:50 UTC (permalink / raw)
  To: gcc-cvs

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

commit f8c6ba149c3b30f7390cf2f7a821d1967aa06dc4
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Fri Oct 27 14:50:18 2023 -0400

    Update ChangeLog.*

Diff:
---
 gcc/ChangeLog.vpair | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gcc/ChangeLog.vpair b/gcc/ChangeLog.vpair
index 64e6fd0f8e91..86db6581b17c 100644
--- a/gcc/ChangeLog.vpair
+++ b/gcc/ChangeLog.vpair
@@ -1,3 +1,25 @@
+==================== Branch work141-vpair, patch #323 ====================
+
+Add vector pair add elements built-in functions.
+
+2023-10-27  Michael Meissner  <meissner@linux.ibm.com>
+
+gcc/
+
+	* config/rs6000/rs6000-builtins.def (__builtin_vpair_f32_add_elements):
+	Add built-in function.
+	(__builtin_vpair_f64_add_elements): Likewise.
+	(__builtin_vpair_i64_add_elements): Likewise.
+	* config/rs6000/vector-pair.md (UNSPEC_VPAIR_REDUCE_PLUS_F32): New
+	unspec.
+	(UNSPEC_VPAIR_REDUCE_PLUS_F64): Likewise.
+	(UNSPEC_VPAIR_REDUCE_PLUS_I64): Likewise.
+	(vpair_reduc_plus_scale_v8sf): New insn.
+	(vpair_reduc_plus_scale_v4df): Likewise.
+	(vpair_reduc_plus_scale_v4di): Likewise.
+	* doc/extend.texi (PowerPC Vector Pair Built-in Functions): Document the
+	add element vector pair built-in functions.
+
 ==================== Branch work141-vpair, patch #322 ====================
 
 Add vector pair assemble/extract built-in functions.

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

* [gcc(refs/users/meissner/heads/work141-vpair)] Update ChangeLog.*
@ 2023-10-27 17:47 Michael Meissner
  0 siblings, 0 replies; 9+ messages in thread
From: Michael Meissner @ 2023-10-27 17:47 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:616d725ab6e2cb2d14b03b8eef8b8dda75260614

commit 616d725ab6e2cb2d14b03b8eef8b8dda75260614
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Fri Oct 27 13:47:53 2023 -0400

    Update ChangeLog.*

Diff:
---
 gcc/ChangeLog.vpair | 39 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)

diff --git a/gcc/ChangeLog.vpair b/gcc/ChangeLog.vpair
index 59e23db6cd0d..64e6fd0f8e91 100644
--- a/gcc/ChangeLog.vpair
+++ b/gcc/ChangeLog.vpair
@@ -1,3 +1,42 @@
+==================== Branch work141-vpair, patch #322 ====================
+
+Add vector pair assemble/extract built-in functions.
+
+2023-10-27  Michael Meissner  <meissner@linux.ibm.com>
+
+gcc/
+
+	* config/rs6000/rs6000-builtins.def (__builtin_vpair_f32_assemble): New
+	built-in.
+	(__builtin_vpair_f32_extract_vector): Likewise.
+	(__builtin_vpair_f64_assemble): Likewise.
+	(__builtin_vpair_f64_extract_vector): Likewise.
+	(__builtin_vpair_i8_assemble): Likewise.
+	(__builtin_vpair_i8_extract_vector): Likewise.
+	(__builtin_vpair_i8u_assemble): Likewise.
+	(__builtin_vpair_i8u_extract_vector): Likewise.
+	(__builtin_vpair_i16_assemble): Likewise.
+	(__builtin_vpair_i16_extract_vector): Likewise.
+	(__builtin_vpair_i16u_assemble): Likewise.
+	(__builtin_vpair_i16u_extract_vector): Likewise.
+	(__builtin_vpair_i32_assemble): Likewise.
+	(__builtin_vpair_i32_extract_vector): Likewise.
+	(__builtin_vpair_i32u_assemble): Likewise.
+	(__builtin_vpair_i32u_extract_vector): Likewise.
+	(__builtin_vpair_i64_assemble): Likewise.
+	(__builtin_vpair_i64_extract_vector): Likewise.
+	(__builtin_vpair_i64u_assemble): Likewise.
+	(__builtin_vpair_i64u_extract_vector): Likewise.
+	* config/rs6000/vector-pair.md ("vpair_assemble_<vp_pmode>): New insn.
+	(vpair_extract_vector_<vp_pmode): Likewise.
+	(vpair_extract_vector_<vp_pmode>_mem): Likewise.
+	* doc/extend.texi (PowerPC Vector Pair Built-in Functions): Document the
+	assemble and extract vector pair built-in functions.
+
+gcc/testsuite/
+
+	* gcc.target/powerpc/vector-pair-9.c: New test.
+
 ==================== Branch work141-vpair, patch #321 ====================
 
 Add support for integer vector pair built-in functions.

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

* [gcc(refs/users/meissner/heads/work141-vpair)] Update ChangeLog.*
@ 2023-10-27  5:16 Michael Meissner
  0 siblings, 0 replies; 9+ messages in thread
From: Michael Meissner @ 2023-10-27  5:16 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:43b89902bc6a80809579b7880321189971cc7255

commit 43b89902bc6a80809579b7880321189971cc7255
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Fri Oct 27 01:16:21 2023 -0400

    Update ChangeLog.*

Diff:
---
 gcc/ChangeLog.vpair | 43 +++++++++++++++++++++++--------------------
 1 file changed, 23 insertions(+), 20 deletions(-)

diff --git a/gcc/ChangeLog.vpair b/gcc/ChangeLog.vpair
index f28ee2b991d6..59e23db6cd0d 100644
--- a/gcc/ChangeLog.vpair
+++ b/gcc/ChangeLog.vpair
@@ -1,25 +1,8 @@
-==================== Branch work141-vpair, patch #312 ====================
-
-Add vector pair built-in tests.
-
-2023-10-26  Michael Meissner  <meissner@linux.ibm.com>
-
-gcc/testsuite/
-
-	* gcc.target/powerpc/vector-pair-1.c: New test.
-	* gcc.target/powerpc/vector-pair-2.c: New test.
-	* gcc.target/powerpc/vector-pair-3.c: New test.
-	* gcc.target/powerpc/vector-pair-4.c: New test.
-	* gcc.target/powerpc/vector-pair-5.c: New test.
-	* gcc.target/powerpc/vector-pair-6.c: New test.
-	* gcc.target/powerpc/vector-pair-7.c: New test.
-	* gcc.target/powerpc/vector-pair-8.c: New test.
-
-==================== Branch work141-vpair, patch #311 ====================
+==================== Branch work141-vpair, patch #321 ====================
 
 Add support for integer vector pair built-in functions.
 
-2023-10-26  Michael Meissner  <meissner@linux.ibm.com>
+2023-10-27  Michael Meissner  <meissner@linux.ibm.com>
 
 gcc/
 
@@ -57,7 +40,14 @@ gcc/
 	* doc/extend.texi (PowerPC Vector Pair Built-in Functions): Document the
 	integer vector pair built-in functions.
 
-==================== Branch work141-vpair, patch #310 ====================
+gcc/testsuite/
+
+	* gcc.target/powerpc/vector-pair-5.c: New test.
+	* gcc.target/powerpc/vector-pair-6.c: New test.
+	* gcc.target/powerpc/vector-pair-7.c: New test.
+	* gcc.target/powerpc/vector-pair-8.c: New test.
+
+==================== Branch work141-vpair, patch #320 ====================
 
 Add support for floating point vector pair built-in functions.
 
@@ -85,6 +75,19 @@ gcc/
 	* doc/extend.texi (PowerPC Vector Pair Built-in Functions): Document the
 	floating point and general vector pair built-in functions.
 
+gcc/testsuite/
+
+	* gcc.target/powerpc/vector-pair-1.c: New test.
+	* gcc.target/powerpc/vector-pair-2.c: New test.
+	* gcc.target/powerpc/vector-pair-3.c: New test.
+	* gcc.target/powerpc/vector-pair-4.c: New test.
+
+==================== Branch work141-vpair, patch #312 was reverted ====================
+
+==================== Branch work141-vpair, patch #311 was reverted ====================
+
+==================== Branch work141-vpair, patch #310 was reverted ====================
+
 ==================== Branch work141-vpair, patch #303 was reverted ====================
 
 ==================== Branch work141-vpair, patch #302 was reverted ====================

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

end of thread, other threads:[~2023-11-07 19:22 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-10-31 21:13 [gcc(refs/users/meissner/heads/work141-vpair)] Update ChangeLog.* Michael Meissner
  -- strict thread matches above, loose matches on Subject: below --
2023-11-07 19:22 Michael Meissner
2023-11-02  4:24 Michael Meissner
2023-11-02  3:28 Michael Meissner
2023-11-01 20:14 Michael Meissner
2023-11-01 17:47 Michael Meissner
2023-10-27 18:50 Michael Meissner
2023-10-27 17:47 Michael Meissner
2023-10-27  5:16 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).