[gcc(refs/users/meissner/heads/work098)] Update ChangeLog.meissner.

Michael Meissner meissner@gcc.gnu.org
Wed Aug 17 01:46:24 GMT 2022


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

commit abd8af6d31aaf86c9538023e20e061c1827c9ab0
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Tue Aug 16 21:46:05 2022 -0400

    Update ChangeLog.meissner.
    
    2022-08-16   Michael Meissner  <meissner@linux.ibm.com>
    
    gcc/
    
            * ChangeLog.meissner: Update.

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

diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index 308c3c80189..e7d1f5ad5ea 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,84 @@
+==================== work098, patch #3
+
+Add 'w' suffix for __ibm128 constants.
+
+In the documentation, we mention that 'w' or 'W' can be used as a suffix for
+__ibm128 constants.  We never implemented this.  This patch fixes that.
+
+2022-08-16   Michael Meissner  <meissner@linux.ibm.com>
+
+gcc/
+
+	* config/rs6000/rs6000.cc (rs6000_c_mode_for_suffix): Allow 'w' or 'W'
+	for __ibm128 constants.
+
+gcc/testsuite/
+
+	* gcc.target/powerpc/ibm128-suffix.c: New test.
+
+==================== work098, patch #2
+
+Allow __ibm128 with -msoft-float (PR target/105334)
+
+This patch allows __ibm128 to be used on systems with software floating point
+enabled.  Previously, we required hardware floating point to be enabled to use
+the __builtin_pack_ibm128 and __builtin_unpack_libm128 built-in functions.  This
+fixes PR target/105334.
+
+
+2022-08-16   Michael Meissner  <meissner@linux.ibm.com>
+
+gcc/
+
+	PR target/105334
+	* config/rs6000/rs6000-builtins.cc (rs6000_init_builtins): Enable using
+	the__ibm128 keyword on systems that either use the 128-bit IBM long
+	double format for long double or support IEEE 128-bit.
+	* config/rs6000/rs6000.cc (rs6000_init_libfuncs): Create IBM 128-bit
+	floating point support functions on systems that support the __ibm128
+	keyword.
+	(rs6000_scalar_mode_supported_p): Likewise.
+	* config/rs6000/rs6000.h (TARGET_IBM128): New macro.
+	* config/rs6000/rs6000.md (@extenddf<mode>2_fprs): Allow IFmode to be
+	converted even if long double is not 128-bits.
+	(extenddf<mode>2_vsx): Likewise.
+	(extendiftf2):Allow conversion on systems that support the __ibm128
+	keyword.
+	(extendtfif2): Likewise.
+	(trunciftf2): Likewise.
+	(trunctfif2): Likewise.
+
+==================== work098, patch #1
+
+Allow __ibm128 even if IEEE 128-bit floating point is not supported.
+
+This set of patches changes the GCC compiler to allow the use of the __ibm128
+keyword if we have IEEE 128-bit floating point support enabled or if long double
+is 128-bits.
+
+2022-08-16   Michael Meissner  <meissner@linux.ibm.com>
+
+gcc/
+
+	* config/rs6000/rs6000-builtins.cc (rs6000_init_builtins): Enable using
+	the__ibm128 keyword on systems that either use the 128-bit IBM long
+	double format for long double or support IEEE 128-bit.
+	* config/rs6000/rs6000.cc (rs6000_init_libfuncs): Create IBM 128-bit
+	floating point support functions on systems that support the __ibm128
+	keyword.
+	(rs6000_scalar_mode_supported_p): Likewise.
+	* config/rs6000/rs6000.h (TARGET_IBM128): New macro.
+	* config/rs6000/rs6000.md (@extenddf<mode>2_fprs): Allow IFmode to be
+	converted even if long double is not 128-bits.
+	(extenddf<mode>2_vsx): Likewise.
+	(extendiftf2):Allow conversion on systems that support the __ibm128
+	keyword.
+	(extendtfif2): Likewise.
+	(trunciftf2): Likewise.
+	(trunctfif2): Likewise.
+
+==================== work098, start branch
+
 2022-08-16   Michael Meissner  <meissner@linux.ibm.com>
 
 	Clone branch


More information about the Gcc-cvs mailing list