From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1005) id 5F2253858038; Wed, 10 Aug 2022 07:04:15 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 5F2253858038 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Michael Meissner To: gcc-cvs@gcc.gnu.org Subject: [gcc(refs/users/meissner/heads/work097)] Update ChangeLog.meissner. X-Act-Checkin: gcc X-Git-Author: Michael Meissner X-Git-Refname: refs/users/meissner/heads/work097 X-Git-Oldrev: c5e4e6f80824b6a07a257f68433bb53d85a26447 X-Git-Newrev: ce2baf986535c61decacaf23bcfaa6985507b4dc Message-Id: <20220810070415.5F2253858038@sourceware.org> Date: Wed, 10 Aug 2022 07:04:15 +0000 (GMT) X-BeenThere: gcc-cvs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Aug 2022 07:04:15 -0000 https://gcc.gnu.org/g:ce2baf986535c61decacaf23bcfaa6985507b4dc commit ce2baf986535c61decacaf23bcfaa6985507b4dc Author: Michael Meissner Date: Wed Aug 10 03:03:58 2022 -0400 Update ChangeLog.meissner. 2022-08-10 Michael Meissner gcc/ * ChangeLog.meissner: Update. Diff: --- gcc/ChangeLog.meissner | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner index 4bc6bdb00a9..c293e41907a 100644 --- a/gcc/ChangeLog.meissner +++ b/gcc/ChangeLog.meissner @@ -1,3 +1,42 @@ +==================== work097, patch004 + +Use _Float128 type for __float128. + +In the past if the long double type was IEEE 128-bit, the __float128 type would +use the long double type, and TFmode would be used for the mode for both +_Float128 and long double types. + +This patch always uses the _Float128 type for __float128, and it always uses +KFmode for the mode. Right now, a similar change for __ibm128 has not been +made. + +In making these changes, I noticed that there was an internal tree for holding +the __float128 type. This code removes that internal tree variable. + +2022-08-10 Michael Meissner + +gcc/ + + * config/rs6000/rs6000-builtin.cc (rs6000_type_string): Use + float128_type_node, not ieee128_float_type_mode. + (rs6000_init_builtins): Always use the _Float128 type for the __float128 + keyword. Do not use the long double type. + (rs6000_expand_builtin): Rework converting KFmode and IFmode built-in + functions to TFmode. + * config/rs6000/rs6000-c.cc (rs6000_target_modify_macros): Use + float128_type_node, not ieee128_float_type_mode. Simplify if + statements. + (rs6000_cpu_cpp_builtins): Delete ieee128_float_type_mode. + * config/rs6000/rs6000.cc (rs6000_libgcc_floating_mode_supported_p): + Always use KFmode for _Float128 and __float128. + (rs6000_floatn_mode): Likewise. + (rs6000_c_mode_for_suffix): Always use KFmode for _Float128 and + __float128. Add 'w' and 'W' suffix for __ibm128 constants. + * config/rs6000/rs6000.h (RS6000_BTI_ieee128_float): Delete. + (ieee128_float_type_node): Likewise. + +==================== work097, patch003 was reverted + ==================== work097, patch002 Rework 128-bit complex multiply and divide.