[gcc(refs/users/meissner/heads/work031)] Undo patches.
Michael Meissner
meissner@gcc.gnu.org
Wed Jan 6 22:01:36 GMT 2021
https://gcc.gnu.org/g:49bffb9a2f9f6d6c8d9c1cfc27f4fac4e663909f
commit 49bffb9a2f9f6d6c8d9c1cfc27f4fac4e663909f
Author: Michael Meissner <meissner@linux.ibm.com>
Date: Wed Jan 6 17:00:54 2021 -0500
Undo patches.
libgcc/
2021-01-04 Michael Meissner <meissner@linux.ibm.com>
Undo patches.
* 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/_strfromkf.c: 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.h (BFP_KIND): Add new binary floating point kind for
IEEE 128-bit floating point.
(__strtokf): Add declaration for IEEE 128-bit conversion.
(__strfromkf): Add declaration for IEEE 128-bit conversion.
Diff:
---
libgcc/config/rs6000/_dd_to_kf.c | 37 ---------------------
libgcc/config/rs6000/_kf_to_dd.c | 37 ---------------------
libgcc/config/rs6000/_kf_to_sd.c | 37 ---------------------
libgcc/config/rs6000/_kf_to_td.c | 37 ---------------------
libgcc/config/rs6000/_sd_to_kf.c | 37 ---------------------
libgcc/config/rs6000/_strfromkf.c | 62 ------------------------------------
libgcc/config/rs6000/_strtokf.c | 56 --------------------------------
libgcc/config/rs6000/_td_to_kf.c | 37 ---------------------
libgcc/config/rs6000/quad-float128.h | 8 -----
libgcc/config/rs6000/t-float128 | 34 +-------------------
libgcc/dfp-bit.c | 10 +-----
libgcc/dfp-bit.h | 23 -------------
12 files changed, 2 insertions(+), 413 deletions(-)
diff --git a/libgcc/config/rs6000/_dd_to_kf.c b/libgcc/config/rs6000/_dd_to_kf.c
deleted file mode 100644
index 3b4d8500a57..00000000000
--- a/libgcc/config/rs6000/_dd_to_kf.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright (C) 1989-2021 Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 3, or (at your option) any later
-version.
-
-GCC is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
-for more details.
-
-Under Section 7 of GPL version 3, you are granted additional
-permissions described in the GCC Runtime Library Exception, version
-3.1, as published by the Free Software Foundation.
-
-You should have received a copy of the GNU General Public License and
-a copy of the GCC Runtime Library Exception along with this program;
-see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
-<http://www.gnu.org/licenses/>. */
-
-/* Decimal64 -> _Float128 conversion. */
-
-/* FINE_GRAINED_LIBRARIES is used so we can isolate just to dd_to_tf conversion
- function from dp-bits.c. */
-#define FINE_GRAINED_LIBRARIES 1
-#define L_dd_to_kf 1
-#define WIDTH 64
-
-#if !defined(__LONG_DOUBLE_128__) || !defined(__LONG_DOUBLE_IEEE128__)
-#error "Long double is not IEEE 128-bit"
-#endif
-
-/* Use dfp-bit.c to do the real work. */
-#include "dfp-bit.c"
diff --git a/libgcc/config/rs6000/_kf_to_dd.c b/libgcc/config/rs6000/_kf_to_dd.c
deleted file mode 100644
index 8d1c49dd396..00000000000
--- a/libgcc/config/rs6000/_kf_to_dd.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright (C) 1989-2021 Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 3, or (at your option) any later
-version.
-
-GCC is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
-for more details.
-
-Under Section 7 of GPL version 3, you are granted additional
-permissions described in the GCC Runtime Library Exception, version
-3.1, as published by the Free Software Foundation.
-
-You should have received a copy of the GNU General Public License and
-a copy of the GCC Runtime Library Exception along with this program;
-see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
-<http://www.gnu.org/licenses/>. */
-
-/* _Float128 -> Decimal64 conversion. */
-
-/* FINE_GRAINED_LIBRARIES is used so we can isolate just to tf_to_dd conversion
- function from dp-bits.c. */
-#define FINE_GRAINED_LIBRARIES 1
-#define L_kf_to_dd 1
-#define WIDTH 64
-
-#if !defined(__LONG_DOUBLE_128__) || !defined(__LONG_DOUBLE_IEEE128__)
-#error "Long double is not IEEE 128-bit"
-#endif
-
-/* Use dfp-bit.c to do the real work. */
-#include "dfp-bit.c"
diff --git a/libgcc/config/rs6000/_kf_to_sd.c b/libgcc/config/rs6000/_kf_to_sd.c
deleted file mode 100644
index b02082d6f52..00000000000
--- a/libgcc/config/rs6000/_kf_to_sd.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright (C) 1989-2021 Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 3, or (at your option) any later
-version.
-
-GCC is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
-for more details.
-
-Under Section 7 of GPL version 3, you are granted additional
-permissions described in the GCC Runtime Library Exception, version
-3.1, as published by the Free Software Foundation.
-
-You should have received a copy of the GNU General Public License and
-a copy of the GCC Runtime Library Exception along with this program;
-see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
-<http://www.gnu.org/licenses/>. */
-
-/* _Float128 -> Decimal32 conversion. */
-
-/* FINE_GRAINED_LIBRARIES is used so we can isolate just to tf_to_sd conversion
- function from dp-bits.c. */
-#define FINE_GRAINED_LIBRARIES 1
-#define L_kf_to_sd 1
-#define WIDTH 32
-
-#if !defined(__LONG_DOUBLE_128__) || !defined(__LONG_DOUBLE_IEEE128__)
-#error "Long double is not IEEE 128-bit"
-#endif
-
-/* Use dfp-bit.c to do the real work. */
-#include "dfp-bit.c"
diff --git a/libgcc/config/rs6000/_kf_to_td.c b/libgcc/config/rs6000/_kf_to_td.c
deleted file mode 100644
index f120709bb42..00000000000
--- a/libgcc/config/rs6000/_kf_to_td.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright (C) 1989-2021 Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 3, or (at your option) any later
-version.
-
-GCC is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
-for more details.
-
-Under Section 7 of GPL version 3, you are granted additional
-permissions described in the GCC Runtime Library Exception, version
-3.1, as published by the Free Software Foundation.
-
-You should have received a copy of the GNU General Public License and
-a copy of the GCC Runtime Library Exception along with this program;
-see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
-<http://www.gnu.org/licenses/>. */
-
-/* _Float128 -> Decimal128 conversion. */
-
-/* FINE_GRAINED_LIBRARIES is used so we can isolate just to tf_to_td conversion
- function from dp-bits.c. */
-#define FINE_GRAINED_LIBRARIES 1
-#define L_kf_to_td 1
-#define WIDTH 128
-
-#if !defined(__LONG_DOUBLE_128__) || !defined(__LONG_DOUBLE_IEEE128__)
-#error "Long double is not IEEE 128-bit"
-#endif
-
-/* Use dfp-bit.c to do the real work. */
-#include "dfp-bit.c"
diff --git a/libgcc/config/rs6000/_sd_to_kf.c b/libgcc/config/rs6000/_sd_to_kf.c
deleted file mode 100644
index df222abdeab..00000000000
--- a/libgcc/config/rs6000/_sd_to_kf.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright (C) 1989-2021 Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 3, or (at your option) any later
-version.
-
-GCC is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
-for more details.
-
-Under Section 7 of GPL version 3, you are granted additional
-permissions described in the GCC Runtime Library Exception, version
-3.1, as published by the Free Software Foundation.
-
-You should have received a copy of the GNU General Public License and
-a copy of the GCC Runtime Library Exception along with this program;
-see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
-<http://www.gnu.org/licenses/>. */
-
-/* Decimal32 -> _Float128 conversion. */
-
-/* FINE_GRAINED_LIBRARIES is used so we can isolate just to sd_to_tf conversion
- function from dp-bits.c. */
-#define FINE_GRAINED_LIBRARIES 1
-#define L_sd_to_kf 1
-#define WIDTH 32
-
-#if !defined(__LONG_DOUBLE_128__) || !defined(__LONG_DOUBLE_IEEE128__)
-#error "Long double is not IEEE 128-bit"
-#endif
-
-/* Use dfp-bit.c to do the real work. */
-#include "dfp-bit.c"
diff --git a/libgcc/config/rs6000/_strfromkf.c b/libgcc/config/rs6000/_strfromkf.c
deleted file mode 100644
index f8469ce10f0..00000000000
--- a/libgcc/config/rs6000/_strfromkf.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Copyright (C) 1989-2021 Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 3, or (at your option) any later
-version.
-
-GCC is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
-for more details.
-
-Under Section 7 of GPL version 3, you are granted additional
-permissions described in the GCC Runtime Library Exception, version
-3.1, as published by the Free Software Foundation.
-
-You should have received a copy of the GNU General Public License and
-a copy of the GCC Runtime Library Exception along with this program;
-see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
-<http://www.gnu.org/licenses/>. */
-
-/* Conversion to IEEE 128-bit floating point from string. */
-
-/* Enable glibc to declare strfroml if it exists. */
-#define __STDC_WANT_IEC_60559_BFP_EXT__ 1
-
-#include <stddef.h>
-#include <stdlib.h>
-#include <soft-fp.h>
-#include <quad-float128.h>
-#include <stdio.h>
-
-/* This function must be built with IBM 128-bit as long double, so that we can
- access the strfroml function if do not have an IEEE 128-bit version, and if
- that is not available, use sprintf. */
-#if !defined(__LONG_DOUBLE_128__) || !defined(__LONG_DOUBLE_IBM128__)
-#error "Long double is not IBM 128-bit"
-#endif
-
-/* If the user is using GLIBC 2.32, we can use the __snprintfieee128 function.
-
- If we are linked against an earlier library, we will have fake it by
- converting the value to long double, and using snprinf to do the conversion.
- This isn't ideal, as IEEE 128-bit has more exponent range than IBM
- 128-bit. */
-
-typedef int snprintf_type (char *restrict, size_t, const char *restrict, ...);
-
-extern snprintf_type __snprintfieee128 __attribute__ ((__weak__));
-
-int __strfromkf (char *restrict string,
- size_t size,
- const char *restrict format,
- _Float128 number)
-{
- if (__snprintfieee128)
- return __snprintfieee128 (string, size, format, number);
-
- return snprintf (string, size, format, (long double)number);
-}
diff --git a/libgcc/config/rs6000/_strtokf.c b/libgcc/config/rs6000/_strtokf.c
deleted file mode 100644
index 696a2c907bb..00000000000
--- a/libgcc/config/rs6000/_strtokf.c
+++ /dev/null
@@ -1,56 +0,0 @@
-/* Copyright (C) 1989-2021 Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 3, or (at your option) any later
-version.
-
-GCC is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
-for more details.
-
-Under Section 7 of GPL version 3, you are granted additional
-permissions described in the GCC Runtime Library Exception, version
-3.1, as published by the Free Software Foundation.
-
-You should have received a copy of the GNU General Public License and
-a copy of the GCC Runtime Library Exception along with this program;
-see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
-<http://www.gnu.org/licenses/>. */
-
-/* Conversion to IEEE 128-bit floating point from string. */
-
-#include <stddef.h>
-#include <stdlib.h>
-#include <soft-fp.h>
-#include <quad-float128.h>
-
-/* This function must be built with IBM 128-bit as long double, so that we can
- access the strtold function if do not have an IEEE 128-bit version. */
-#if !defined(__LONG_DOUBLE_128__) || !defined(__LONG_DOUBLE_IBM128__)
-#error "Long double is not IBM 128-bit"
-#endif
-
-/* If the user is using GLIBC 2.32, we can use the __strtoieee128 function.
-
- If we are linked against an earlier library, we will have fake it by
- converting the string to IBM 128-bit long double, and then converting that to
- __float128. This isn't ideal, as IEEE 128-bit has more exponent range than
- IBM 128-bit. */
-
-extern _Float128 __strtoieee128 (const char *, char **) __attribute__ ((__weak__));
-
-_Float128
-__strtokf (const char *string, char **endptr)
-{
- long double num;
-
- if (__strtoieee128)
- return __strtoieee128 (string, endptr);
-
- num = strtold (string, endptr);
- return (_Float128) num;
-}
diff --git a/libgcc/config/rs6000/_td_to_kf.c b/libgcc/config/rs6000/_td_to_kf.c
deleted file mode 100644
index 330a7802827..00000000000
--- a/libgcc/config/rs6000/_td_to_kf.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright (C) 1989-2021 Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 3, or (at your option) any later
-version.
-
-GCC is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
-for more details.
-
-Under Section 7 of GPL version 3, you are granted additional
-permissions described in the GCC Runtime Library Exception, version
-3.1, as published by the Free Software Foundation.
-
-You should have received a copy of the GNU General Public License and
-a copy of the GCC Runtime Library Exception along with this program;
-see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
-<http://www.gnu.org/licenses/>. */
-
-/* Decimal128 -> _Float128 conversion. */
-
-/* FINE_GRAINED_LIBRARIES is used so we can isolate just to td_to_tf conversion
- function from dp-bits.c. */
-#define FINE_GRAINED_LIBRARIES 1
-#define L_td_to_kf 1
-#define WIDTH 128
-
-#if !defined(__LONG_DOUBLE_128__) || !defined(__LONG_DOUBLE_IEEE128__)
-#error "Long double is not IEEE 128-bit"
-#endif
-
-/* Use dfp-bit.c to do the real work. */
-#include "dfp-bit.c"
diff --git a/libgcc/config/rs6000/quad-float128.h b/libgcc/config/rs6000/quad-float128.h
index 5beb1531d2b..0eb1d34691f 100644
--- a/libgcc/config/rs6000/quad-float128.h
+++ b/libgcc/config/rs6000/quad-float128.h
@@ -49,7 +49,6 @@ typedef __complex float TCtype __attribute__ ((mode (TC)));
#pragma GCC target ("vsx,float128")
#endif
-#include <stddef.h>
#include <quad.h>
#define IBM128_TYPE __ibm128
@@ -172,13 +171,6 @@ extern TFtype __trunctfkf2 (IBM128_TYPE);
extern TCtype __mulkc3 (TFtype, TFtype, TFtype, TFtype);
extern TCtype __divkc3 (TFtype, TFtype, TFtype, TFtype);
-/* Convert IEEE 128-bit floating point to/from string. We explicitly use
- _Float128 instead of TFmode because _strtokf and _strfromkf must be compiled
- with long double being IBM 128. */
-extern _Float128 __strtokf (const char *, char **);
-extern int __strfromkf (char *restrict, size_t, const char *restrict,
- _Float128);
-
/* Implementation of conversions between __ibm128 and __float128, to allow the
same code to be used on systems with IEEE 128-bit emulation and with IEEE
128-bit hardware support. */
diff --git a/libgcc/config/rs6000/t-float128 b/libgcc/config/rs6000/t-float128
index 77a22fb65c6..d5413445189 100644
--- a/libgcc/config/rs6000/t-float128
+++ b/libgcc/config/rs6000/t-float128
@@ -22,23 +22,10 @@ fp128_softfp_static_obj = $(addsuffix -sw$(objext),$(fp128_softfp_funcs))
fp128_softfp_shared_obj = $(addsuffix -sw_s$(objext),$(fp128_softfp_funcs))
fp128_softfp_obj = $(fp128_softfp_static_obj) $(fp128_softfp_shared_obj)
-# Decimal <-> _Float128 conversions
-fp128_dec_funcs = _kf_to_sd _kf_to_dd _kf_to_td \
- _sd_to_kf _dd_to_kf _td_to_kf
-
-# _Float128 to/from string conversions that must be compiled with IBM 128-bit
-# long double.
-fp128_decstr_funcs = _strtokf _strfromkf
-
-# Decimal <-> __ibm128 conversions
-ibm128_dec_funcs = _tf_to_sd _tf_to_dd _tf_to_td \
- _sd_to_tf _dd_to_tf _td_to_tf
-
# New functions for software emulation
fp128_ppc_funcs = floattikf floatuntikf fixkfti fixunskfti \
extendkftf2-sw trunctfkf2-sw \
- sfp-exceptions _mulkc3 _divkc3 _powikf2 \
- $(fp128_dec_funcs) $(fp128_decstr_funcs)
+ sfp-exceptions _mulkc3 _divkc3 _powikf2
fp128_ppc_src = $(addprefix $(srcdir)/config/rs6000/,$(addsuffix \
.c,$(fp128_ppc_funcs)))
@@ -82,25 +69,6 @@ $(fp128_ppc_obj) : INTERNAL_CFLAGS += $(FP128_CFLAGS_SW)
$(fp128_obj) : $(fp128_includes)
$(fp128_obj) : $(srcdir)/config/rs6000/quad-float128.h
-# Force the TF mode to/from decimal functions to be compiled with IBM long
-# double. Add building the KF mode to/from decimal conversions with explict
-# IEEE long double.
-fp128_dec_objs = $(addsuffix $(objext),$(fp128_dec_funcs)) \
- $(addsuffix _s$(objext),$(fp128_dec_funcs))
-
-fp128_decstr_objs = $(addsuffix $(objext),$(fp128_decstr_funcs)) \
- $(addsuffix _s$(objext),$(fp128_decstr_funcs))
-
-ibm128_dec_objs = $(addsuffix $(objext),$(ibm128_dec_funcs)) \
- $(addsuffix _s$(objext),$(ibm128_dec_funcs))
-
-FP128_CFLAGS_DECIMAL = -mno-gnu-attribute -Wno-psabi -mabi=ieeelongdouble
-IBM128_CFLAGS_DECIMAL = -mno-gnu-attribute -Wno-psabi -mabi=ibmlongdouble
-
-$(fp128_dec_objs) : INTERNAL_CFLAGS += $(FP128_CFLAGS_DECIMAL)
-$(fp128_decstr_objs) : INTERNAL_CFLAGS += $(IBM128_CFLAGS_DECIMAL)
-$(ibm128_dec_objs) : INTERNAL_CFLAGS += $(IBM128_CFLAGS_DECIMAL)
-
$(fp128_softfp_src) : $(srcdir)/soft-fp/$(subst -sw,,$(subst kf,tf,$@)) $(fp128_dep)
@src="$(srcdir)/soft-fp/$(subst -sw,,$(subst kf,tf,$@))"; \
echo "Create $@"; \
diff --git a/libgcc/dfp-bit.c b/libgcc/dfp-bit.c
index b9994ff721d..17bca9cf203 100644
--- a/libgcc/dfp-bit.c
+++ b/libgcc/dfp-bit.c
@@ -606,7 +606,6 @@ INT_TO_DFP (INT_TYPE i)
#if defined (L_sd_to_sf) || defined (L_dd_to_sf) || defined (L_td_to_sf) \
|| defined (L_sd_to_df) || defined (L_dd_to_df) || defined (L_td_to_df) \
- || defined (L_sd_to_kf) || defined (L_dd_to_kf) || defined (L_td_to_kf) \
|| ((defined (L_sd_to_xf) || defined (L_dd_to_xf) || defined (L_td_to_xf)) \
&& LONG_DOUBLE_HAS_XF_MODE) \
|| ((defined (L_sd_to_tf) || defined (L_dd_to_tf) || defined (L_td_to_tf)) \
@@ -627,7 +626,6 @@ DFP_TO_BFP (DFP_C_TYPE f)
#if defined (L_sf_to_sd) || defined (L_sf_to_dd) || defined (L_sf_to_td) \
|| defined (L_df_to_sd) || defined (L_df_to_dd) || defined (L_df_to_td) \
- || defined (L_kf_to_sd) || defined (L_kf_to_dd) || defined (L_kf_to_td) \
|| ((defined (L_xf_to_sd) || defined (L_xf_to_dd) || defined (L_xf_to_td)) \
&& LONG_DOUBLE_HAS_XF_MODE) \
|| ((defined (L_tf_to_sd) || defined (L_tf_to_dd) || defined (L_tf_to_td)) \
@@ -643,14 +641,8 @@ BFP_TO_DFP (BFP_TYPE x)
decContextDefault (&context, CONTEXT_INIT);
DFP_INIT_ROUNDMODE (context.round);
- /* Use a C library function to write the floating point value to a string. If
- we are handling the IEEE 128-bit floating point on PowerPC, use the special
- function __strfromkf instead of sprintf. */
-#if defined (L_kf_to_sd) || defined (L_kf_to_dd) || defined (L_kf_to_td)
- __strfromkf (buf, BUFMAX, BFP_FMT, (BFP_VIA_TYPE) x);
-#else
+ /* Use a C library function to write the floating point value to a string. */
sprintf (buf, BFP_FMT, (BFP_VIA_TYPE) x);
-#endif
/* Convert from the floating point string to a decimal* type. */
FROM_STRING (&s, buf, &context);
diff --git a/libgcc/dfp-bit.h b/libgcc/dfp-bit.h
index 9072cc6e1d3..1fa42ee621f 100644
--- a/libgcc/dfp-bit.h
+++ b/libgcc/dfp-bit.h
@@ -241,12 +241,6 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#elif defined (L_sd_to_tf) || defined (L_dd_to_tf) || defined (L_td_to_tf) \
|| defined (L_tf_to_sd) || defined (L_tf_to_dd) || defined (L_tf_to_td)
#define BFP_KIND 4
-#elif defined (L_sd_to_kf) || defined (L_dd_to_kf) || defined (L_td_to_kf) \
- || defined (L_kf_to_sd) || defined (L_kf_to_dd) || defined (L_kf_to_td)
-#define BFP_KIND 5
-extern _Float128 __strtokf (const char *, char **);
-extern int __strfromkf (char *restrict, unsigned long, const char *restrict,
- _Float128);
#endif
/* If BFP_KIND is defined, define additional macros:
@@ -297,12 +291,6 @@ extern int __strfromkf (char *restrict, unsigned long, const char *restrict,
#define BFP_VIA_TYPE long double
#endif /* LONG_DOUBLE_HAS_TF_MODE */
-#elif BFP_KIND == 5
-#define BFP_TYPE _Float128
-#define BFP_FMT "%.21Le"
-#define BFP_VIA_TYPE _Float128
-#define STR_TO_BFP __strtokf
-
#endif /* BFP_KIND */
#if WIDTH == 128 || WIDTH_TO == 128
@@ -502,9 +490,6 @@ extern int __strfromkf (char *restrict, unsigned long, const char *restrict,
#elif BFP_KIND == 4
#define BFP_TO_DFP DPD_BID_NAME(__dpd_trunctfsd,__bid_trunctfsd)
#define DFP_TO_BFP DPD_BID_NAME(__dpd_extendsdtf,__bid_extendsdtf)
-#elif BFP_KIND == 5
-#define BFP_TO_DFP DPD_BID_NAME(__dpd_trunckfsd,__bid_trunckfsd)
-#define DFP_TO_BFP DPD_BID_NAME(__dpd_extendsdkf,__bid_extendsdkf)
#endif /* BFP_KIND */
#elif WIDTH == 64
@@ -520,9 +505,6 @@ extern int __strfromkf (char *restrict, unsigned long, const char *restrict,
#elif BFP_KIND == 4
#define BFP_TO_DFP DPD_BID_NAME(__dpd_trunctfdd,__bid_trunctfdd)
#define DFP_TO_BFP DPD_BID_NAME(__dpd_extendddtf,__bid_extendddtf)
-#elif BFP_KIND == 5
-#define BFP_TO_DFP DPD_BID_NAME(__dpd_trunckfdd,__bid_trunckfdd)
-#define DFP_TO_BFP DPD_BID_NAME(__dpd_extendddkf,__bid_extendddkf)
#endif /* BFP_KIND */
#elif WIDTH == 128
@@ -538,9 +520,6 @@ extern int __strfromkf (char *restrict, unsigned long, const char *restrict,
#elif BFP_KIND == 4
#define BFP_TO_DFP DPD_BID_NAME(__dpd_extendtftd,__bid_extendtftd)
#define DFP_TO_BFP DPD_BID_NAME(__dpd_trunctdtf,__bid_trunctdtf)
-#elif BFP_KIND == 5
-#define BFP_TO_DFP DPD_BID_NAME(__dpd_extendkftd,__bid_extendkftd)
-#define DFP_TO_BFP DPD_BID_NAME(__dpd_trunctdkf,__bid_trunctdkf)
#endif /* BFP_KIND */
#endif /* WIDTH */
@@ -630,7 +609,6 @@ extern DFP_C_TYPE INT_TO_DFP (INT_TYPE);
#if defined (L_sd_to_sf) || defined (L_dd_to_sf) || defined (L_td_to_sf) \
|| defined (L_sd_to_df) || defined (L_dd_to_df) || defined (L_td_to_df) \
- || defined (L_sd_to_kf) || defined (L_dd_to_kf) || defined (L_td_to_kf) \
|| ((defined (L_sd_to_xf) || defined (L_dd_to_xf) || defined (L_td_to_xf)) \
&& LONG_DOUBLE_HAS_XF_MODE) \
|| ((defined (L_sd_to_tf) || defined (L_dd_to_tf) || defined (L_td_to_tf)) \
@@ -640,7 +618,6 @@ extern BFP_TYPE DFP_TO_BFP (DFP_C_TYPE);
#if defined (L_sf_to_sd) || defined (L_sf_to_dd) || defined (L_sf_to_td) \
|| defined (L_df_to_sd) || defined (L_df_to_dd) || defined (L_df_to_td) \
- || defined (L_kf_to_sd) || defined (L_kf_to_dd) || defined (L_kf_to_td) \
|| ((defined (L_xf_to_sd) || defined (L_xf_to_dd) || defined (L_xf_to_td)) \
&& LONG_DOUBLE_HAS_XF_MODE) \
|| ((defined (L_tf_to_sd) || defined (L_tf_to_dd) || defined (L_tf_to_td)) \
More information about the Gcc-cvs
mailing list