[gcc(refs/users/meissner/heads/work099)] Update ChangeLog.meissner.
Michael Meissner
meissner@gcc.gnu.org
Fri Sep 2 02:24:13 GMT 2022
https://gcc.gnu.org/g:ad2db5a91ef52fd89ef65c164d4afe49d24bb482
commit ad2db5a91ef52fd89ef65c164d4afe49d24bb482
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Thu Sep 1 22:21:49 2022 -0400
Update ChangeLog.meissner.
2022-09-01 Michael Meissner <meissner@linux.ibm.com>
gcc/
* ChangeLog.meissner: Update.
Diff:
---
gcc/ChangeLog.meissner | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner
index ceca8ac003a..a898abbc61b 100644
--- a/gcc/ChangeLog.meissner
+++ b/gcc/ChangeLog.meissner
@@ -1,4 +1,40 @@
+==================== Work099, patch #5:
+
+Update float 128-bit conversions.
+
+This patch reworks the conversions between 128-bit binary floating point types.
+Previously, we would call rs6000_expand_float128_convert to do all conversions.
+Now, we only define the conversions between the same type. The appropriate
+extend or truncate insn is generated, and after register allocation, it is
+converted to a move.
+
+This patch fixes two places where we want to override the external name for the
+conversion function, and the wrong optab was used.
+
+2022-09-01 Michael Meissner <meissner@linux.ibm.com>
+
+gcc/
+ * config/rs6000/rs6000.cc (init_float128_ieee): Use the correct
+ float_extend or float_truncate optab based on how the machine converts
+ between IEEE 128-bit and IBM 128-bit.
+ * config/rs6000/rs6000.md (IFKF): Delete.
+ (IFKF_reg): Delete.
+ (extendiftf2): Rewrite to be a move if IFmode and TFmode are both IBM
+ 128-bit. Do not run if TFmode is IEEE 128-bit.
+ (extendifkf2): Delete.
+ (extendtfkf2): Delete.
+ (extendtfif2): Delete.
+ (trunciftf2): Delete.
+ (truncifkf2): Delete.
+ (trunckftf2): Delete.
+ (extendkftf2): Implement conversion of IEEE 128-bit types as a move.
+ (trunctfif2): Delete.
+ (trunctfkf2): Implement conversion of IEEE 128-bit types as a move.
+ (extend<mode>tf2_internal): Delete.
+ (extendtf<mode>2_internal): Delete.
+
==================== Work099, patch #4:
+
Rework 128-bit complex multiply and divide.
This function reworks how the complex multiply and divide built-in functions are
More information about the Gcc-cvs
mailing list