public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc(refs/users/meissner/heads/work093)] Update ChangeLog.meissner.
@ 2022-07-12 2:52 Michael Meissner
0 siblings, 0 replies; 20+ messages in thread
From: Michael Meissner @ 2022-07-12 2:52 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:b4d04a86bae7e570db996cc2596118edddf25a76
commit b4d04a86bae7e570db996cc2596118edddf25a76
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Mon Jul 11 22:52:14 2022 -0400
Update ChangeLog.meissner.
2022-07-11 Michael Meissner <meissner@linux.ibm.com>
gcc/
* ChangeLog.meissner: Update.
Diff:
---
gcc/ChangeLog.meissner | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index 20e65871084..e6073e78f89 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,23 @@
+==================== work093, patch #17
+
+Add TARGET_IBM128
+
+2022-07-08 Michael Meissner <meissner@linux.ibm.com>
+
+gcc/
+
+ * config/rs6000/rs6000-builtin.cc (rs6000_init_builtins): Use
+ TARGET_IBM128.
+ * config/rs6000/rs0000.c (rs6000_init_libfuncs): Likewise.
+ * config/rs6000/rs6000.h (TARGET_IBM128): New macro.
+ * config/rs6000/rs6000.md (extenddf<mode>2_fprs): Remove redundant
+ test for TARGET_LONG_DOUBLE_128.
+ (extenddf<mode>2_vsx): Likewise.
+ (extendiftf2): Use TARGET_IBM128.
+ (extendtfkf2): Likewise.
+ (extendtfif2): Likewise.
+ (trunckftf2): Likewise.
+
==================== work093, patch #16
Make __ibm128 support work on older machines.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [gcc(refs/users/meissner/heads/work093)] Update ChangeLog.meissner.
@ 2022-07-12 1:37 Michael Meissner
0 siblings, 0 replies; 20+ messages in thread
From: Michael Meissner @ 2022-07-12 1:37 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:40652cac7e725c3dfdb54ca871ac4043d125e470
commit 40652cac7e725c3dfdb54ca871ac4043d125e470
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Mon Jul 11 21:36:57 2022 -0400
Update ChangeLog.meissner.
2022-07-11 Michael Meissner <meissner@linux.ibm.com>
gcc/
* ChangeLog.meissner: Update.
Diff:
---
gcc/ChangeLog.meissner | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index 7eb6a381596..20e65871084 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,25 @@
+==================== work093, patch #16
+
+Make __ibm128 support work on older machines.
+
+2022-07-08 Michael Meissner <meissner@linux.ibm.com>
+
+gcc/
+
+ * config/rs6000/rs600.md (IFKF): Delete.
+ (IFKF_reg): Delete.
+ (extendiftf2): Allow __ibm128 on older systems.
+ (extendtfif2): Likewise.
+ (trunciftf2): Likewise.
+ (trunctfif2): Likewise.
+ (extendkftf2_internal): Split extend<mode>tf2_internal and
+ extendtf<mode>2_internal into separate insns that handle either
+ conversions between IEEE 128-bit types or between IBM 128-bit
+ types. Set the type and insn length correctly.
+ (extendtfkf2_internal): Likewise.
+ (extendiftf2_internal): Likewise.
+ (extendtfif2_internal): Likewise.
+
==================== work093, patch #15 (reverted)
==================== work093, patch #14
^ permalink raw reply [flat|nested] 20+ messages in thread
* [gcc(refs/users/meissner/heads/work093)] Update ChangeLog.meissner.
@ 2022-07-08 20:02 Michael Meissner
0 siblings, 0 replies; 20+ messages in thread
From: Michael Meissner @ 2022-07-08 20:02 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:3c7c7ca9875db11b3e04ad04ded19f7954687d18
commit 3c7c7ca9875db11b3e04ad04ded19f7954687d18
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Fri Jul 8 16:02:09 2022 -0400
Update ChangeLog.meissner.
2022-07-08 Michael Meissner <meissner@linux.ibm.com>
gcc/
* ChangeLog.meissner: Update.
Diff:
---
gcc/ChangeLog.meissner | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index 68044b38bdf..1282fe3f334 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,27 @@
+==================== work093, patch #15
+
+Rework setting 128-bit complex multiply and divide.
+
+2022-07-08 Michael Meissner <meissner@linux.ibm.com>
+
+gcc/
+
+ * config/rs6000/rs600.cc (create_complex_muldiv_inner): New
+ function.
+ (create_complex_muldiv): Rewrite function to handle both multiply
+ and divide. Set the decl assembler name to change the name to the
+ external function.
+
+gcc/testsuite/
+
+ * gcc.target/powerpc/mulkc3-2.c: Revert patch #7.
+ * gcc.target/powerpc/divkc3-2.c: Likewise.
+
+libgcc/
+
+ * config/rs6000/float128-ifunc.c: Revert patch #7.
+ * config/rs6000/quad-float128.h: Likewise.
+
==================== work093, patch #14
Mangle __ibm128 types differently from long double.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [gcc(refs/users/meissner/heads/work093)] Update ChangeLog.meissner.
@ 2022-07-08 2:27 Michael Meissner
0 siblings, 0 replies; 20+ messages in thread
From: Michael Meissner @ 2022-07-08 2:27 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:0ad0bf05f666b65b41bfd11785878115ed098c6b
commit 0ad0bf05f666b65b41bfd11785878115ed098c6b
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Thu Jul 7 22:26:59 2022 -0400
Update ChangeLog.meissner.
2022-07-07 Michael Meissner <meissner@linux.ibm.com>
gcc/
* ChangeLog.meissner: Update.
Diff:
---
gcc/ChangeLog.meissner | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index 96a7ad26c86..68044b38bdf 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,15 @@
+==================== work093, patch #14
+
+Mangle __ibm128 types differently from long double.
+
+2022-07-07 Michael Meissner <meissner@linux.ibm.com>
+
+gcc/
+
+ * config/rs6000/rs6000.cc (rs6000_mangle_type): Mangle __ibm128
+ differently than long double if long double uses the IBM 128-bit
+ format.
+
==================== work093, patch #13
Initialize __ibm128 indepenently of initializing __float128.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [gcc(refs/users/meissner/heads/work093)] Update ChangeLog.meissner.
@ 2022-07-07 23:39 Michael Meissner
0 siblings, 0 replies; 20+ messages in thread
From: Michael Meissner @ 2022-07-07 23:39 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:00ebb556279776655f4d2b16ffb65915bb89914a
commit 00ebb556279776655f4d2b16ffb65915bb89914a
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Thu Jul 7 19:39:40 2022 -0400
Update ChangeLog.meissner.
2022-07-07 Michael Meissner <meissner@linux.ibm.com>
gcc/
* ChangeLog.meissner: Update.
Diff:
---
gcc/ChangeLog.meissner | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index f80a39de43e..96a7ad26c86 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,26 @@
+==================== work093, patch #13
+
+Initialize __ibm128 indepenently of initializing __float128.
+
+2022-07-07 Michael Meissner <meissner@linux.ibm.com>
+
+gcc/
+
+ * config/rs6000/rs6000.cc (rs6000_init_libfuncs): Initialize
+ IFmode if either IEEE 128-bit is supported or long double is
+ 128-bit.
+
+==================== work093, patch #12
+
+Allow __ibm128 with -msoft-float
+
+2022-07-07 Michael Meissner <meissner@linux.ibm.com>
+
+gcc/
+
+ * config/rs6000/rs6000.h (FLOAT128_IBM_P): Remove
+ TARGET_HARD_FLOAT test.
+
==================== work093, patch #11
Fix typos in KF/TF overload
^ permalink raw reply [flat|nested] 20+ messages in thread
* [gcc(refs/users/meissner/heads/work093)] Update ChangeLog.meissner.
@ 2022-07-07 21:08 Michael Meissner
0 siblings, 0 replies; 20+ messages in thread
From: Michael Meissner @ 2022-07-07 21:08 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:8839692ab80d06bf38ff94d3f13cd3c98bfc9c43
commit 8839692ab80d06bf38ff94d3f13cd3c98bfc9c43
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Thu Jul 7 17:08:14 2022 -0400
Update ChangeLog.meissner.
2022-07-07 Michael Meissner <meissner@linux.ibm.com>
gcc/
* ChangeLog.meissner: Update.
Diff:
---
gcc/ChangeLog.meissner | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index c9fd8219544..f80a39de43e 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,17 @@
+==================== work093, patch #11
+
+Fix typos in KF/TF overload
+
+2022-07-07 Michael Meissner <meissner@linux.ibm.com>
+
+gcc/
+
+ * config/rs6000/rs6000-builtins.def
+ (__builtin_vsx_scalar_insert_exp_qp_tf): Correct argument type to
+ long double.
+ (__builtin_vsx_scalar_test_data_class_qp_tf): Likewise.
+ (__builtin_vsx_scalar_test_neg_qp_tf): Likewise.
+
==================== work093, patch #10
Allow KF/TF conversions in IEEE 128-bit insns.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [gcc(refs/users/meissner/heads/work093)] Update ChangeLog.meissner.
@ 2022-07-07 20:22 Michael Meissner
0 siblings, 0 replies; 20+ messages in thread
From: Michael Meissner @ 2022-07-07 20:22 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:a15021139d79b1987f511b71f3244d57000b5d8b
commit a15021139d79b1987f511b71f3244d57000b5d8b
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Thu Jul 7 16:22:28 2022 -0400
Update ChangeLog.meissner.
2022-07-07 Michael Meissner <meissner@linux.ibm.com>
gcc/
* ChangeLog.meissner: Update.
Diff:
---
gcc/ChangeLog.meissner | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index edfbf0c47d9..c9fd8219544 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,15 @@
+==================== work093, patch #10
+
+Allow KF/TF conversions in IEEE 128-bit insns.
+
+2022-07-07 Michael Meissner <meissner@linux.ibm.com>
+
+gcc/
+
+ * config/rs6000/rs6000-c.cc (is_float128_p): Update comment.
+ (rs6000_builtin_type_compatible): Do not consider _Float128 to be
+ compatible with long double under -mabi=ieeelongdouble.
+
==================== work093, patch #9 (reverted)
==================== work093, patch #8 (reverted)
^ permalink raw reply [flat|nested] 20+ messages in thread
* [gcc(refs/users/meissner/heads/work093)] Update ChangeLog.meissner.
@ 2022-07-07 16:32 Michael Meissner
0 siblings, 0 replies; 20+ messages in thread
From: Michael Meissner @ 2022-07-07 16:32 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:7362063408a52f997db8a130af9b97aad5a92a75
commit 7362063408a52f997db8a130af9b97aad5a92a75
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Thu Jul 7 12:32:42 2022 -0400
Update ChangeLog.meissner.
2022-07-07 Michael Meissner <meissner@linux.ibm.com>
gcc/
* ChangeLog.meissner: Update.
Diff:
---
gcc/ChangeLog.meissner | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index bbbe2f43834..d2fd8420538 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,31 @@
+==================== work093, patch #9
+
+Allow KF/TF conversions in IEEE 128-bit insns.
+
+2022-07-07 Michael Meissner <meissner@linux.ibm.com>
+
+gcc/
+
+ * config/rs6000/predicate.md (kf_or_tf_operand): New predicate.
+ * config/rs6000/rs6000.md (add<mode>3_odd): Use kf_or_tf_operand
+ instead of altivec_register_operand.
+ (sub<mode>3_odd): Likewise.
+ (mul<mode>3_odd): Likewise.
+ (div<mode>3_odd): Likewise.
+ (sqrt<mode>2_odd): Likewise.
+ (fma<mode>4_odd): Likewise.
+ (fms<mode>4_odd): Likewise.
+ (nfma<mode>4_odd): Likewise.
+ (nfms<mode>4_odd): Likewise.
+ * config/rs6000/vsx.md (xsxexpqp_<mode>): Likewise.
+ (xsxsigqp_<mode>): Likewise.
+ (xsiexpqpf_<mode>): Likewise.
+ (xscmpexpqp_<code>_<mode>): Likewise.
+ (xscmpexpqp_<code>_<mode>): Likewise.
+ (xststdcqp_<mode>): Likewise.
+ (xststdcnegqp_<mode>): Likewise.
+ (xststdcqp_<mode>): Likewise.
+
==================== work093, patch #8
Fixup KFmode to TFmode built-in functions.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [gcc(refs/users/meissner/heads/work093)] Update ChangeLog.meissner.
@ 2022-07-07 4:40 Michael Meissner
0 siblings, 0 replies; 20+ messages in thread
From: Michael Meissner @ 2022-07-07 4:40 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:005abb905e1a752a4c35a5fb40d9b12f70240284
commit 005abb905e1a752a4c35a5fb40d9b12f70240284
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Thu Jul 7 00:40:01 2022 -0400
Update ChangeLog.meissner.
2022-07-07 Michael Meissner <meissner@linux.ibm.com>
gcc/
* ChangeLog.meissner: Update.
Diff:
---
gcc/ChangeLog.meissner | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index cb09858dc95..bbbe2f43834 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,17 @@
+==================== work093, patch #8
+
+Fixup KFmode to TFmode built-in functions.
+
+2022-07-07 Michael Meissner <meissner@linux.ibm.com>
+
+gcc/
+
+ * config/rs6000/rs6000-builtin.cc (rs6000_expand_builtin): If we
+ have certain KFmode built-in functions, convert to TFmode if a
+ long double was passed, and long double is IEEE 128-bit. Also if
+ the modes are different, call convert_to_mode instead of
+ copy_to_mode_reg.
+
==================== work093, patch #7
__float128 and __ibm128 always gets different internal types.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [gcc(refs/users/meissner/heads/work093)] Update ChangeLog.meissner.
@ 2022-07-06 22:15 Michael Meissner
0 siblings, 0 replies; 20+ messages in thread
From: Michael Meissner @ 2022-07-06 22:15 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:3e126577e5819edd3485c5d176c3078ffc2411bb
commit 3e126577e5819edd3485c5d176c3078ffc2411bb
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Wed Jul 6 18:15:27 2022 -0400
Update ChangeLog.meissner.
2022-07-06 Michael Meissner <meissner@linux.ibm.com>
gcc/
* ChangeLog.meissner: Update.
Diff:
---
gcc/ChangeLog.meissner | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index 0a81518ea91..cb09858dc95 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -30,6 +30,13 @@ gcc/
format.
(rs6000_c_mode_for_suffix): The 'q' suffix always uses KFmode,
even if long double uses the IEEE 128-bit encoding.
+ * config/rs6000/rs6000.md (extendkfif2): New insn.
+ (trunckfif2): Likewise.
+
+gcc/testsuite/
+
+ * gcc.target/powerpc/mulkd3-2.c: Update test.
+ * gcc.target/powerpc/divkd3-2.c: Likewise.
libgcc/
^ permalink raw reply [flat|nested] 20+ messages in thread
* [gcc(refs/users/meissner/heads/work093)] Update ChangeLog.meissner.
@ 2022-07-06 21:15 Michael Meissner
0 siblings, 0 replies; 20+ messages in thread
From: Michael Meissner @ 2022-07-06 21:15 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:7dc7cf283eff4692e395df5773cafbd25fe9cac6
commit 7dc7cf283eff4692e395df5773cafbd25fe9cac6
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Wed Jul 6 17:15:07 2022 -0400
Update ChangeLog.meissner.
2022-07-06 Michael Meissner <meissner@linux.ibm.com>
gcc/
* ChangeLog.meissner: Update.
Diff:
---
gcc/ChangeLog.meissner | 42 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 42 insertions(+)
diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index a093e556f47..0a81518ea91 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,45 @@
+==================== work093, patch #7
+
+__float128 and __ibm128 always gets different internal types.
+
+2022-07-06 Michael Meissner <meissner@linux.ibm.com>
+
+gcc/
+
+ * config/rs6000/rs6000-builtin.cc (rs6000_init_builtins): Always
+ create a new tree node for __ibm128, even if long double uses the
+ IBM 128-bit format. Always create a new tree node for __float128,
+ even if long double uses the IEEE 128-bit format.
+ (rs6000_expand_builtin): Remove all of the code that changed
+ KFmode built-in functions into TFmode, since these functions now
+ support overloading between KFmode and TFmode.
+ * config/rs6000/rs600.cc (reg_offset_addressing_ok_p): Allow
+ IFmode to use offset addresses.
+ (init_float128_ibm): Remove checks for hardware floating point for
+ the IBM 128-bit comparisons.
+ (init_float128_ieee): Do not create __mulkc3 and __divkc3 since
+ __float128 always creates these functions.
+ (rs6000_init_libfuncs): Create complex multiply and divide for
+ long double if long double uses the IEEE 128-bit encoding.
+ (rs6000_libgcc_floating_mode_supported_p): Allow KFmode if IEEE
+ 128-bit floating point is supported. Allow IFmode if either IEEE
+ 128-bit floating point is supported or long double is IBM
+ 128-bit.
+ (rs6000_floatn_mode): Always return KFmode for IEEE 128-bit. Do
+ not return TFmode, even if long double uses the IEEE 128-bit
+ format.
+ (rs6000_c_mode_for_suffix): The 'q' suffix always uses KFmode,
+ even if long double uses the IEEE 128-bit encoding.
+
+libgcc/
+
+ * config/rs6000/float128-ifunc.c (__multc3_ieee128): Add ifunc
+ support.
+ (__divtc3_ieee128): Likewise.
+ * config/rs6000/quad-float128.h (__multc3_ieee128): Add
+ Declaration.
+ (__divtc3_ieee128): Likewise.
+
==================== work093, patch #6
Overload IEEE 128-bit test data built-in functions.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [gcc(refs/users/meissner/heads/work093)] Update ChangeLog.meissner.
@ 2022-07-01 7:26 Michael Meissner
0 siblings, 0 replies; 20+ messages in thread
From: Michael Meissner @ 2022-07-01 7:26 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:280fed5601339801d5e6881bca05292176d1adb2
commit 280fed5601339801d5e6881bca05292176d1adb2
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Fri Jul 1 03:25:56 2022 -0400
Update ChangeLog.meissner.
2022-07-01 Michael Meissner <meissner@linux.ibm.com>
gcc/
* ChangeLog.meissner: Update.
Diff:
---
gcc/ChangeLog.meissner | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index 720d32f96cd..a093e556f47 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,31 @@
+==================== work093, patch #6
+
+Overload IEEE 128-bit test data built-in functions.
+
+2022-07-01 Michael Meissner <meissner@linux.ibm.com>
+
+gcc/
+
+ * config/rs6000/rs6000-builtins.def
+ (__builtin_vsx_scalar_test_data_class_qp_kf): Rename KFmode IEEE
+ 128-bit test data built-in functions to have a KF suffix to allow
+ overloading.
+ (__builtin_vsx_scalar_test_neg_qp_kf): Likewise.
+ (__builtin_vsx_scalar_test_data_class_qp_tf): Add TFmode variants
+ for IEEE 128-bit insert and extract support.
+ (__builtin_vsx_scalar_test_neg_qp_tf): Likewise.
+ * config/rs6000/rs6000-overload.def
+ (__builtin_vec_scalar_test_data_class): Add TFmode overloads.
+ (__builtin_vec_scalar_test_neg): Likewise.
+ (__builtin_vec_scalar_test_neg_qp): Likewise.
+ (__builtin_vec_scalar_test_data_class_qp): Likewise.
+
+gcc/testsuite/
+
+ * gcc.target/powerpc/bfp/scalar-test-data-class-11.c: Update the
+ expected error message.
+ * gcc.target/powerpc/bfp/scalar-test-neg-5.c: Likewise.
+
==================== work093, patch #5
Overload IEEE 128-bit extract and insert support.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [gcc(refs/users/meissner/heads/work093)] Update ChangeLog.meissner.
@ 2022-07-01 6:48 Michael Meissner
0 siblings, 0 replies; 20+ messages in thread
From: Michael Meissner @ 2022-07-01 6:48 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:5a647e35721d5821e75bcfb72140a9d2cc4472e3
commit 5a647e35721d5821e75bcfb72140a9d2cc4472e3
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Fri Jul 1 02:48:10 2022 -0400
Update ChangeLog.meissner.
2022-07-01 Michael Meissner <meissner@linux.ibm.com>
gcc/
* ChangeLog.meissner: Update.
Diff:
---
gcc/ChangeLog.meissner | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index b6499399718..720d32f96cd 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -2,7 +2,7 @@
Overload IEEE 128-bit extract and insert support.
-2022-06-30 Michael Meissner <meissner@linux.ibm.com>
+2022-07-01 Michael Meissner <meissner@linux.ibm.com>
gcc/
@@ -23,6 +23,14 @@ gcc/
(__builtin_vec_scalar_extract_sig): Likewise.
(__builtin_vec_scalar_insert_exp): Likewise.
+gcc/testsuite/
+
+ * gcc.target/powerpc/bfp/scalar-extract-exp-4.c: Update error
+ message to account to match built-in functions are now
+ overloaded.
+ * gcc.target/powerpc/bfp/scalar-extract-sig-4.c: Likewise.
+ * gcc.target/powerpc/bfp/scalar-insert-exp-10.c: Likewise.
+
==================== work093, patch #4
Overload IEEE 128-bit scalar eq, gt, lt, and unordered built-ins.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [gcc(refs/users/meissner/heads/work093)] Update ChangeLog.meissner.
@ 2022-06-30 20:28 Michael Meissner
0 siblings, 0 replies; 20+ messages in thread
From: Michael Meissner @ 2022-06-30 20:28 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:9737814498f048ee75734320d532d80d847352f8
commit 9737814498f048ee75734320d532d80d847352f8
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Thu Jun 30 16:27:58 2022 -0400
Update ChangeLog.meissner.
2022-06-30 Michael Meissner <meissner@linux.ibm.com>
gcc/
* ChangeLog.meissner: Update.
Diff:
---
gcc/ChangeLog.meissner | 4 ----
1 file changed, 4 deletions(-)
diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index a45b642e5d9..b6499399718 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -6,10 +6,6 @@ Overload IEEE 128-bit extract and insert support.
gcc/
- * config/rs6000/rs6000-builtin.cc (rs6000_expand_builtin): Remove
- converting KFmode IEEE insert and extract built-in functions to
- TFmode insert and extract built-in functions when long double is
- IEEE 128-bit.
* config/rs6000/rs6000-builtins.def
(__builtin_vsx_scalar_extract_expq_kf): Rename KFmode IEEE 128-bit
insert and extract built-in functions to have a KF suffix to allow
^ permalink raw reply [flat|nested] 20+ messages in thread
* [gcc(refs/users/meissner/heads/work093)] Update ChangeLog.meissner.
@ 2022-06-30 19:22 Michael Meissner
0 siblings, 0 replies; 20+ messages in thread
From: Michael Meissner @ 2022-06-30 19:22 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:15de9d7f205a30384967465144e0f1ecdb9a262b
commit 15de9d7f205a30384967465144e0f1ecdb9a262b
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Thu Jun 30 15:22:31 2022 -0400
Update ChangeLog.meissner.
2022-06-30 Michael Meissner <meissner@linux.ibm.com>
gcc/
* ChangeLog.meissner: Update.
Diff:
---
gcc/ChangeLog.meissner | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index 99c1921e305..a45b642e5d9 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,32 @@
+==================== work093, patch #5
+
+Overload IEEE 128-bit extract and insert support.
+
+2022-06-30 Michael Meissner <meissner@linux.ibm.com>
+
+gcc/
+
+ * config/rs6000/rs6000-builtin.cc (rs6000_expand_builtin): Remove
+ converting KFmode IEEE insert and extract built-in functions to
+ TFmode insert and extract built-in functions when long double is
+ IEEE 128-bit.
+ * config/rs6000/rs6000-builtins.def
+ (__builtin_vsx_scalar_extract_expq_kf): Rename KFmode IEEE 128-bit
+ insert and extract built-in functions to have a KF suffix to allow
+ overloading.
+ (__builtin_vsx_scalar_extract_sigq_kf): Likewise.
+ (__builtin_vsx_scalar_insert_exp_qp_kf): Likewise.
+ (__builtin_vsx_scalar_extract_expq_tf): Add TFmode variants for
+ IEEE 128-bit insert and extract support.
+ (__builtin_vsx_scalar_extract_sigq_tf): Likewise.
+ (__builtin_vsx_scalar_insert_exp_qp_tf): Likewise.
+ * config/rs6000/rs6000-c.cc (altivec_resolve_overloaded_builtin):
+ Add support for having KFmode and TFmode variants of VSIEQPF.
+ * config/rs6000/rs6000-overload.def
+ (__builtin_vec_scalar_extract_exp): Add TFmode overloads.
+ (__builtin_vec_scalar_extract_sig): Likewise.
+ (__builtin_vec_scalar_insert_exp): Likewise.
+
==================== work093, patch #4
Overload IEEE 128-bit scalar eq, gt, lt, and unordered built-ins.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [gcc(refs/users/meissner/heads/work093)] Update ChangeLog.meissner.
@ 2022-06-30 19:18 Michael Meissner
0 siblings, 0 replies; 20+ messages in thread
From: Michael Meissner @ 2022-06-30 19:18 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:229b10bd81e8f727e49701c739444817b228fdd1
commit 229b10bd81e8f727e49701c739444817b228fdd1
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Thu Jun 30 15:17:56 2022 -0400
Update ChangeLog.meissner.
2022-06-30 Michael Meissner <meissner@linux.ibm.com>
gcc/
* ChangeLog.meissner: Update.
Diff:
---
gcc/ChangeLog.meissner | 3 ---
1 file changed, 3 deletions(-)
diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index 23e37d2bb72..99c1921e305 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -6,9 +6,6 @@ Overload IEEE 128-bit scalar eq, gt, lt, and unordered built-ins.
gcc/
- * config/rs6000/rs6000-builtin.cc (rs6000_expand_builtin): Remove
- converting KFmode comparison built-in functions to TFmode
- comparison built-in functions when long double is IEEE 128-bit.
* config/rs6000/rs6000-builtins.def
(__builtin_vsx_scalar_cmp_exp_qp_eq_kf): Rename KFmode comparison
built-in functions to have a KF suffix to allow overloading.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [gcc(refs/users/meissner/heads/work093)] Update ChangeLog.meissner.
@ 2022-06-30 17:43 Michael Meissner
0 siblings, 0 replies; 20+ messages in thread
From: Michael Meissner @ 2022-06-30 17:43 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:15d214b9b398b045883a4a1b461ef2f16f804d7f
commit 15d214b9b398b045883a4a1b461ef2f16f804d7f
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Thu Jun 30 13:43:12 2022 -0400
Update ChangeLog.meissner.
2022-06-30 Michael Meissner <meissner@linux.ibm.com>
gcc/
* ChangeLog.meissner: Update.
Diff:
---
gcc/ChangeLog.meissner | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index ea3151b5b06..23e37d2bb72 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,32 @@
+==================== work093, patch #4
+
+Overload IEEE 128-bit scalar eq, gt, lt, and unordered built-ins.
+
+2022-06-30 Michael Meissner <meissner@linux.ibm.com>
+
+gcc/
+
+ * config/rs6000/rs6000-builtin.cc (rs6000_expand_builtin): Remove
+ converting KFmode comparison built-in functions to TFmode
+ comparison built-in functions when long double is IEEE 128-bit.
+ * config/rs6000/rs6000-builtins.def
+ (__builtin_vsx_scalar_cmp_exp_qp_eq_kf): Rename KFmode comparison
+ built-in functions to have a KF suffix to allow overloading.
+ (__builtin_vsx_scalar_cmp_exp_qp_gt_kf): Likewise.
+ (__builtin_vsx_scalar_cmp_exp_qp_lt_kf): Likewise.
+ (__builtin_vsx_scalar_cmp_exp_qp_unordered_kf): Likewise.
+ (__builtin_vsx_scalar_cmp_exp_qp_eq_tf): Add TFmode comparison
+ built-in functions.
+ (__builtin_vsx_scalar_cmp_exp_qp_gt_tf): Likewise.
+ (__builtin_vsx_scalar_cmp_exp_qp_lt_tf): Likewise.
+ (__builtin_vsx_scalar_cmp_exp_qp_unordered_tf): Likewise.
+ * config/rs6000/rs6000-overload.def
+ (__builtin_vec_scalar_cmp_exp_eq): Add TFmode overloaded
+ functions.
+ (__builtin_vec_scalar_cmp_exp_gt): Likewise.
+ (__builtin_vec_scalar_cmp_exp_lt): Likewise.
+ (__builtin_vec_scalar_cmp_exp_unordered): Likewise.
+
==================== work093, patch #3
Make _round_to_odd functions overloaded.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [gcc(refs/users/meissner/heads/work093)] Update ChangeLog.meissner.
@ 2022-06-30 15:22 Michael Meissner
0 siblings, 0 replies; 20+ messages in thread
From: Michael Meissner @ 2022-06-30 15:22 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:9dc6c8d0dae5df5e4f76d7322f9a3ae37c15e3bb
commit 9dc6c8d0dae5df5e4f76d7322f9a3ae37c15e3bb
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Thu Jun 30 11:21:59 2022 -0400
Update ChangeLog.meissner.
2022-06-30 Michael Meissner <meissner@linux.ibm.com>
gcc/
* ChangeLog.meissner: Update.
Diff:
---
gcc/ChangeLog.meissner | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)
diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index d9171216954..ea3151b5b06 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,40 @@
+==================== work093, patch #3
+
+Make _round_to_odd functions overloaded.
+
+2022-06-30 Michael Meissner <meissner@linux.ibm.com>
+
+gcc/
+
+ * config/rs6000/rs6000-builtin.cc (rs6000_expand_builtin): Remove
+ converting KFmode round to odd built-in functions to TFmode round
+ to odd built-in functions when long double is IEEE 128-bit.
+ * config/rs6000/rs6000-builtins.def
+ (__builtin_addf128_round_to_odd_kf): Rename KFmode round to odd
+ built-in functions with a KF suffix to allow overloading.
+ (__builtin_divf128_round_to_odd_kf): Likewise.
+ (__builtin_fmaf128_round_to_odd_kf): Likewise.
+ (__builtin_mulf128_round_to_odd_kf): Likewise.
+ (__builtin_sqrtf128_round_to_odd_kf): Likewise.
+ (__builtin_subf128_round_to_odd_kf): Likewise.
+ (__builtin_truncf128_round_to_odd_kf): Likewise.
+ (__builtin_addf128_round_to_odd_tf): Add TFmode round to odd
+ built-in functions.
+ (__builtin_fmaf128_round_to_odd_tf): Likewise.
+ (__builtin_mulf128_round_to_odd_tf): Likewise.
+ (__builtin_sqrtf128_round_to_odd_tf): Likewise.
+ (__builtin_subf128_round_to_odd_tf): Likewise.
+ (__builtin_truncf128_round_to_odd_tf): Likewise.
+ * config/rs6000/rs6000-overload.def
+ (__builtin_addf128_round_to_odd): Make round to odd built-in
+ functions overloaded.
+ (__builtin_divf128_round_to_odd): Likewise.
+ (__builtin_fmaf128_round_to_odd): Likewise.
+ (__builtin_mulf128_round_to_odd): Likewise.
+ (__builtin_sqrtf128_round_to_odd): Likewise.
+ (__builtin_subf128_round_to_odd): Likewise.
+ (__builtin_truncf128_round_to_odd): Likewise.
+
==================== work093, patch #2
Add support to built-ins for long double using IEEE 128-bit.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [gcc(refs/users/meissner/heads/work093)] Update ChangeLog.meissner.
@ 2022-06-30 6:01 Michael Meissner
0 siblings, 0 replies; 20+ messages in thread
From: Michael Meissner @ 2022-06-30 6:01 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:de859c383f48df4cb9460d150f415b792649db84
commit de859c383f48df4cb9460d150f415b792649db84
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Thu Jun 30 02:01:24 2022 -0400
Update ChangeLog.meissner.
2022-06-30 Michael Meissner <meissner@linux.ibm.com>
gcc/
* ChangeLog.meissner: Update.
Diff:
---
gcc/ChangeLog.meissner | 40 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)
diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index e18fd3a4518..d9171216954 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,43 @@
+==================== work093, patch #2
+
+Add support to built-ins for long double using IEEE 128-bit.
+
+This patch lays the ground work that future patches will use to add
+builtin support (both normal and overloaded) for the case where long
+double uses the IEEE 128-bit encoding. The issue to enable migrating the
+builtins to use the overload facility to allow both __float128 and long
+double to the functions.
+
+This adds a new stanza (ieee128-hw-ld) for when we have IEEE 128-bit
+hardware support and long double uses the IEEE 128-bit encoding.
+
+A new type attribute (ieeeld) is added for long double if long double uses
+the IEEE 128-bit encoding.
+
+2022-06-30 Michael Meissner <meissner@linux.ibm.com>
+
+
+gcc/
+
+ * config/rs6000/rs6000-builtin.cc (rs6000_invalid_builtin): Add
+ support for ibm128-hw-ld stanza.
+ (rs6000_builtin_is_supported): Likewise.
+ (rs6000_init_builtins): Likewise.
+ (rs6000_expand_builtin): Add support for IEEE128_HW_LD. Add
+ support for ieeeld.
+ * config/rs6000/rs6000-builtins.def (toplevel): Add comment about
+ the new ieeeld attribute.
+ * config/rs6000/rs6000-gen-builtins.cc (enum bif_stanza): Add
+ BSTZ_IEEE128_HW_LD.
+ (stanza_map): Likewise.
+ (enable_string): Likewise.
+ (attrinfo): Add isieeeld.
+ (parse_bif_attrs): Parse ieeeld. Add printing ieeeld to the debug
+ print.
+ (write_decls): Add support for ibm128-hw-ld stanza and ieeeld
+ attribute.
+ (write_bif_static_init): Add support for ieeeld attribute.
+
==================== work093, patch #1
Change __ieee128 to __float128.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [gcc(refs/users/meissner/heads/work093)] Update ChangeLog.meissner.
@ 2022-06-30 4:30 Michael Meissner
0 siblings, 0 replies; 20+ messages in thread
From: Michael Meissner @ 2022-06-30 4:30 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:d06456e49e8e56909b64325d64ec68f4f43b077f
commit d06456e49e8e56909b64325d64ec68f4f43b077f
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Thu Jun 30 00:30:10 2022 -0400
Update ChangeLog.meissner.
2022-06-30 Michael Meissner <meissner@linux.ibm.com>
gcc/
* ChangeLog.meissner: Update.
Diff:
---
gcc/ChangeLog.meissner | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index c41c02840a8..e18fd3a4518 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,20 @@
+==================== work093, patch #1
+
+Change __ieee128 to __float128.
+
+2022-06-29 Michael Meissner <meissner@linux.ibm.com>
+
+
+gcc/
+
+ * config/rs6000/rs6000-builtin.cc (rs6000_init_builtins): Make the
+ IEEE 128-bit keyword "__float128", not "__ieee128".
+ * config/rs6000/rs6000-c.cc (rs6000_target_modify_macros): Define
+ __ieee128 to be __float128 instead of defining __float128 to be
+ __ieee128.
+
+==================== work093, create branch
+
2022-06-29 Michael Meissner <meissner@linux.ibm.com>
Clone branch
^ permalink raw reply [flat|nested] 20+ messages in thread
end of thread, other threads:[~2022-07-12 2:52 UTC | newest]
Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-12 2:52 [gcc(refs/users/meissner/heads/work093)] Update ChangeLog.meissner Michael Meissner
-- strict thread matches above, loose matches on Subject: below --
2022-07-12 1:37 Michael Meissner
2022-07-08 20:02 Michael Meissner
2022-07-08 2:27 Michael Meissner
2022-07-07 23:39 Michael Meissner
2022-07-07 21:08 Michael Meissner
2022-07-07 20:22 Michael Meissner
2022-07-07 16:32 Michael Meissner
2022-07-07 4:40 Michael Meissner
2022-07-06 22:15 Michael Meissner
2022-07-06 21:15 Michael Meissner
2022-07-01 7:26 Michael Meissner
2022-07-01 6:48 Michael Meissner
2022-06-30 20:28 Michael Meissner
2022-06-30 19:22 Michael Meissner
2022-06-30 19:18 Michael Meissner
2022-06-30 17:43 Michael Meissner
2022-06-30 15:22 Michael Meissner
2022-06-30 6:01 Michael Meissner
2022-06-30 4:30 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).