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