aboutsummaryrefslogtreecommitdiff
path: root/ChangeLog
diff options
context:
space:
mode:
authorPaul E. Murphy <murphyp@linux.vnet.ibm.com>2016-06-14 11:44:14 -0500
committerPaul E. Murphy <murphyp@linux.vnet.ibm.com>2016-08-17 14:06:03 -0500
commitce6698ea0aea863bbfb4e932494406789e4e36c1 (patch)
treefc8a53b53c2b6d459dd9b4a5042314bcad7f4482 /ChangeLog
parent1f645571d2db9008b3cd3d5acb9ff93357864283 (diff)
downloadglibc-ce6698ea0aea863bbfb4e932494406789e4e36c1.tar
glibc-ce6698ea0aea863bbfb4e932494406789e4e36c1.tar.gz
glibc-ce6698ea0aea863bbfb4e932494406789e4e36c1.tar.bz2
glibc-ce6698ea0aea863bbfb4e932494406789e4e36c1.zip
Support for type-generic libm function implementations libm
This defines a new classes of libm objects. The <func>_template.c file which is used in conjunction with the new makefile hooks to derive variants for each type supported by the target machine. The headers math-type-macros-TYPE.h are used to supply macros to a common implementation of a function in a file named FUNC_template.c and glued togethor via a generated file matching existing naming in the build directory. This has the properties of preserving the existing override mechanism and not requiring any arcane build system twiddling. Likewise, it enables machines to override these files without any additional work. I have verified the built objects for ppc64, x86_64, alpha, arm, and m68k do not change in any meaningful way with these changes using the Fedora cross toolchains. I have verified the x86_64 and ppc64 changes still run.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog50
1 files changed, 50 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index a3df80811b..2fba9ad327 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,53 @@
+2016-08-17 Paul E. Murphy <murphyp@linux.vnet.ibm.com>
+
+ * math/Makefile: (gen-libm-templates.stmp): New rule.
+ (libm-calls): Move carg conj cimag and cabs into ...
+ (gen-libm-calls): New variable.
+ (generated): Inform Make objects from gen-libm-calls
+ may be generated.
+
+ * sysdeps/generic/math-type-macros.h: New file.
+ * sysdeps/generic/math-type-macros-float.h: Likewise.
+ * sysdeps/generic/math-type-macros-double.h: Likewise.
+ * sysdeps/generic/math-type-macros-ldouble.h: Likewise.
+ * sysdeps/ieee754/ldbl-opt/math-type-macros-double.h: Likewise.
+ * sysdeps/ieee754/ldbl-opt/math-type-macros-ldouble.h: Likewise.
+
+ * math/cabs.c: Refactor into
+ * math/cabs_template.c: new file.
+ * math/cabsf.c: Removed.
+ * math/cabsl.c: Removed.
+ * sysdeps/ieee754/ldbl-opt/cabsf.c: Removed.
+ * sysdeps/ieee754/ldbl-opt/cabsl.c: Removed.
+
+ * math/carg.c: Refactor into
+ * math/carg_template.c: new file.
+ * math/cargf.c: Removed.
+ * math/cargl.c: Removed.
+ * sysdeps/ieee754/ldbl-opt/cargf.c: Removed.
+ * sysdeps/ieee754/ldbl-opt/cargl.c: Removed.
+
+ * math/conj.c: Refactor into
+ * math/conj_template.c: new file.
+ * math/conjf.c: Removed.
+ * math/conjl.c: Removed.
+ * sysdeps/ieee754/ldbl-opt/conjf.c: Removed.
+ * sysdeps/ieee754/ldbl-opt/conjl.c: Removed.
+
+ * math/cimag.c: Refactor into
+ * math/cimag_template.c: new file.
+ * math/cimagf.c: Removed.
+ * math/cimagl.c: Removed.
+ * sysdeps/ieee754/ldbl-opt/cimagf.c: Removed.
+ * sysdeps/ieee754/ldbl-opt/cimagl.c: Removed.
+
+ * math/cimag.c: Refactor into
+ * math/cimag_template.c: new file.
+ * math/cimagf.c: Removed.
+ * math/cimagl.c: Removed.
+ * sysdeps/ieee754/ldbl-opt/cimagf.c: Removed.
+ * sysdeps/ieee754/ldbl-opt/cimagl.c: Removed.
+
2016-08-17 Florian Weimer <fweimer@redhat.com>
Reduce time to expected nptl/tst-once5 failure.