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

Michael Meissner meissner@gcc.gnu.org
Thu Jan 14 03:35:59 GMT 2021


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

commit e40caba7ab6b7f560d28ee402b6e87a72e14ed88
Author: Michael Meissner <meissner@linux.ibm.com>
Date:   Wed Jan 13 22:35:36 2021 -0500

    Update ChangeLog.meissner.
    
    gcc/
    2021-01-13  Michael Meissner  <meissner@linux.ibm.com>
    
            * ChangeLog.meissner: Update.
    
    gcc/testsuite/
    2021-01-13  Michael Meissner  <meissner@linux.ibm.com>
    
            * ChangeLog.meissner: Update.
    
    libgcc/
    2021-01-13  Michael Meissner  <meissner@linux.ibm.com>
    
            * ChangeLog.meissner: Update.

Diff:
---
 gcc/ChangeLog.meissner           | 93 ++++++++++++++++++++++++++++++++++++++++
 gcc/testsuite/ChangeLog.meissner | 58 +++++++++++++++++++++++++
 libgcc/ChangeLog.meissner        | 40 +++++++++++++++++
 3 files changed, 191 insertions(+)

diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index 65403281029..615f2573092 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,3 +1,96 @@
+work032.patch013:
+2021-01-13  Michael Meissner  <meissner@linux.ibm.com>
+
+	* config/rs6000/rs6000.c (rs6000_option_override_internal): If the
+	user explicitly used -mabi=ieeelongdouble or -mabi=ibmlongdouble,
+	set the long double size to 128.
+	* doc/invoke.texi (PowerPC options): Document that an explicit
+	-mabi=ieeelongdouble or -mabi=ibmlongdouble implicitly sets
+	-mlong-double-128.
+
+work032.patch011:
+2021-01-13  Michael Meissner  <meissner@linux.ibm.com>
+
+	* config/rs6000/rs6000-builtin.def (BU_IBM128_2): Rename
+	RS6000_BTM_IBM128 from RS6000_BTM_FLOAT128.
+	* config/rs6000/rs6000-call.c (rs6000_invalid_builtin): Update
+	error message for __ibm128 built-in functions.
+	(rs6000_init_builtins): Create the __ibm128 keyword on older
+	systems where long double uses the IBM extended double format,
+	even if they don't support IEEE 128-bit floating point.
+	* config/rs6000/rs6000.c (rs6000_builtin_mask_calculate): Rename
+	RS6000_BTM_IBM128 from RS6000_BTM_FLOAT128.
+	(rs6000_builtin_mask_names): Rename RS6000_BTM_IBM128 from
+	RS6000_BTM_FLOAT128.
+	* config/rs6000/rs6000.h (TARGET_IBM128): New macro.
+	(RS6000_BTM_IBM128): Rename from RS6000_BTM_FLOAT128.
+	(RS6000_BTM_COMMON): Rename RS6000_BTM_IBM128 from
+	RS6000_BTM_FLOAT128.
+
+work032.patch006:
+2021-01-13  Michael Meissner  <meissner@linux.ibm.com>
+
+	* config/rs6000/rs6000.c (ieee128_builtin_name): New function.
+	(built_in_uses_long_double): New function.
+	(identifier_ends_in_suffix): New function.
+	(rs6000_mangle_decl_assembler_name): Update support for mapping built-in
+	function names for long double built-in functions if long double is
+	IEEE 128-bit to catch all of the built-in functions that take or
+	return long double arguments.
+
+work032.patch005:
+2021-01-13  Michael Meissner  <meissner@linux.ibm.com>
+
+	PR gcc/97791
+	* config/rs6000/rs6000.c (rs6000_emit_move): Delete code that sets
+	whether long double was passed based on the modes used in moves.
+
+work032.patch004:
+2021-01-13  Michael Meissner  <meissner@linux.ibm.com>
+            Alan Modra  <amodra@gmail.com>
+
+	PR gcc/97791
+	* config/rs6000/rs6000-call.c (init_cumulative_args): Only set
+	that long double was returned if the type is actually long
+	double.
+	(rs6000_function_arg_advance_1): Only set that long double was
+	passed if the type is actually long double.
+
+work032.patch003:
+2021-01-13  Michael Meissner  <meissner@linux.ibm.com>
+
+	PR target/81594
+	* config/rs6000/predicates.md (ds_form_memory): New predicate.
+	* config/rs6000/vsx.md (concatv2di_store): New insn.
+	(dupv2di_store): New insn.
+
+work032.patch002:
+2021-01-13 Michael Meissner  <meissner@linux.ibm.com>
+
+        * config/rs6000/rs6000.c (have_compare_and_set_mask): Add IEEE
+        128-bit floating point types.
+        * config/rs6000/rs6000.md (FPMASK): New iterator.
+        (FPMASK2): New iterator.
+        (Fv mode attribute): Add KFmode and TFmode.
+        (mov<FPMASK:mode><FPMASK2:mode>cc_fpmask): Replace
+        mov<SFDF:mode><SFDF2:mode>cc_p9.  Add IEEE 128-bit fp support.
+        (mov<FPMASK:mode><FPMASK2:mode>cc_invert_fpmask): Replace
+        mov<SFDF:mode><SFDF2:mode>cc_invert_p9.  Add IEEE 128-bit fp
+        support.
+        (fpmask<mode>): Add IEEE 128-bit fp support.  Enable generator to
+        build te RTL.
+        (xxsel<mode>): Add IEEE 128-bit fp support.  Enable generator to
+        build te RTL.
+
+work032.patch001:
+2021-01-13  Michael Meissner  <meissner@linux.ibm.com>
+
+	* config/rs6000/rs6000.c (rs6000_emit_minmax): Add support for ISA
+	3.1 IEEE 128-bit floating point xsmaxcqp and xsmincqp instructions.
+	* config/rs6000/rs60000.h (FLOAT128_MIN_MAX_FPMASK_P): New macro.
+	* config/rs6000/rs6000.md (s<minmax><mode>3): Add support for the
+	ISA 3.1 IEEE 128-bit minimum and maximum instructions.
+
 2021-01-13   Michael Meissner  <meissner@linux.ibm.com>
 
 	Clone branch
diff --git a/gcc/testsuite/ChangeLog.meissner b/gcc/testsuite/ChangeLog.meissner
index 65403281029..53ad2247e77 100644
--- a/gcc/testsuite/ChangeLog.meissner
+++ b/gcc/testsuite/ChangeLog.meissner
@@ -1,3 +1,61 @@
+work032.patch010:
+2021-01-13  Michael Meissner  <meissner@linux.ibm.com>
+
+	* c-c++-common/dfp/convert-bfp-11.c: Force using IBM 128-bit long
+	double.  Remove check for 64-bit long double.
+
+work032.patch009:
+2021-01-13  Michael Meissner  <meissner@linux.ibm.com>
+
+	PR target/70117
+	* gcc.target/powerpc/pr70117.c: Force the long double type to use
+	the IBM 128-bit format.
+
+work032.patch008:
+2021-01-13  Michael Meissner  <meissner@linux.ibm.com>
+
+	* lib/target-supports.exp
+	(check_effective_target_ppc_long_double_ibm): New function.
+	(check_effective_target_ppc_long_double_ieee): New function.
+	(check_effective_target_ppc_long_double_override_ibm): New function.
+	(check_effective_target_ppc_long_double_override_ieee): New function.
+	(check_effective_target_ppc_long_double_128bit): New function.
+	(check_effective_target_ppc_long_double_64bit): New function.
+
+work032.patch006:
+2021-01-13  Michael Meissner  <meissner@linux.ibm.com>
+
+	* gcc.target/powerpc/float128-longdouble-math.c: New test.
+	* gcc.target/powerpc/float128-longdouble-stdio.c: New test.
+	* gcc.target/powerpc/float128-math.c: Adjust test for new name
+	being generated.  Add support for running test on power10.  Add
+	support for running if long double defaults to 64-bits.
+
+work032.patch005:
+2021-01-13  Michael Meissner  <meissner@linux.ibm.com>
+
+	PR target/97791
+	* gcc.target/powerpc/gnuattr1.c: Mark as XFAIL.
+	* gcc.target/powerpc/gnuattr2.c: Mark as XFAIL.
+	* gcc.target/powerpc/gnuattr3.c: Mark as XFAIL.
+
+work032.patch003:
+2021-01-13  Michael Meissner  <meissner@linux.ibm.com>
+
+	PR target/81594
+	* gcc.target/powerpc/pr81594.c: New test.
+
+work032.patch002:
+2021-01-13  Michael Meissner  <meissner@linux.ibm.com>
+
+        * gcc.target/powerpc/float128-cmove.c: New test.
+        * gcc.target/powerpc/float128-minmax-3.c: New test.
+
+work032.patch001:
+2021-01-13  Michael Meissner  <meissner@linux.ibm.com>
+
+	* gcc.target/powerpc/float128-minmax-2.c: New test.
+
 2021-01-13   Michael Meissner  <meissner@linux.ibm.com>
 
 	Clone branch
diff --git a/libgcc/ChangeLog.meissner b/libgcc/ChangeLog.meissner
index 65403281029..be8a1781cbc 100644
--- a/libgcc/ChangeLog.meissner
+++ b/libgcc/ChangeLog.meissner
@@ -1,3 +1,43 @@
+work032.patch012:
+2021-01-13  Michael Meissner  <meissner@linux.ibm.com>
+
+	* config/rs6000/ibm-ldouble.c (pack_ldouble): Use
+	__builtin_pack_ibm128 instead of __builtin_pack_longdouble.
+
+work032.patch007:
+2021-01-13  Michael Meissner  <meissner@linux.ibm.com>
+
+	* config/rs6000/_dd_to_kf.c: New file.
+	* config/rs6000/_kf_to_dd.c: New file.
+	* config/rs6000/_kf_to_sd.c: New file.
+	* config/rs6000/_kf_to_td.c: New file.
+	* config/rs6000/_sd_to_kf.c: New file.
+	* config/rs6000/_sprintfkf.c: New file.
+	* config/rs6000/_sprintfkf.h: New file.
+	* config/rs6000/_strtokf.h: New file.
+	* config/rs6000/_strtokf.c: New file.
+	* config/rs6000/_td_to_kf.c: New file.
+	* config/rs6000/quad-float128.h: Add new declarations.
+	* config/rs6000/t-float128 (fp128_dec_funcs): New macro.
+	(fp128_decstr_funcs): New macro.
+	(ibm128_dec_funcs): New macro.
+	(fp128_ppc_funcs): Add the new conversions.
+	(fp128_dec_objs): Force Decimal <-> __float128 conversions to be
+	compiled with -mabi=ieeelongdouble.
+	(fp128_decstr_objs): Force __float128 <-> string conversions to be
+	compiled with -mabi=ibmlongdouble.
+	(ibm128_dec_objs): Force Decimal <-> __float128 conversions to be
+	compiled with -mabi=ieeelongdouble.
+	(FP128_CFLAGS_DECIMAL): New macro.
+	(IBM128_CFLAGS_DECIMAL): New macro.
+	* dfp-bit.c (DFP_TO_BFP): Add PowerPC _Float128 support.
+	(BFP_TO_DFP): Add PowerPC _Float128 support.
+	* dfp-bit.h (BFP_KIND): Add new binary floating point kind for
+	IEEE 128-bit floating point.
+	(DFP_TO_BFP): Add PowerPC _Float128 support.
+	(BFP_TO_DFP): Add PowerPC _Float128 support.
+	(BFP_SPRINTF): New macro.
+
 2021-01-13   Michael Meissner  <meissner@linux.ibm.com>
 
 	Clone branch


More information about the Gcc-cvs mailing list