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