]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Add AArch64 versions of math_opt_barrier and math_force_eval that avoid going via...
authorWilco Dijkstra <wdijkstr@arm.com>
Mon, 13 Jul 2015 11:48:33 +0000 (12:48 +0100)
committerWilco Dijkstra <wdijkstr@arm.com>
Mon, 13 Jul 2015 11:48:33 +0000 (12:48 +0100)
ChangeLog
sysdeps/aarch64/fpu/math_private.h

index df8c19eeab7f7d495bd6ca336f415101623efb9d..dfef5e0f608cde41eb79cc77ed94f1b556d6b95c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2015-04-01  Wilco Dijkstra  <wdijkstr@arm.com>
+
+       * sysdeps/aarch64/fpu/math_private.h
+       (define math_opt_barrier): Add AArch64 version.
+       (math_force_eval): Likewise.
+
 2015-07-13  Wilco Dijkstra  <wdijkstr@arm.com>
 
        * sysdeps/aarch64/strlen.S (strlen): Optimize strlen.
index b3c2509961c35a02c15e78ddbf287e46fa7cbabf..1f02ddb05ae6562b6e1a08ebfa4b52193084bc2a 100644 (file)
 #include <fenv.h>
 #include <fpu_control.h>
 
+#define math_opt_barrier(x) \
+({ __typeof (x) __x = (x); __asm ("" : "+w" (__x)); __x; })
+#define math_force_eval(x) \
+({ __typeof (x) __x = (x); __asm __volatile__ ("" : : "w" (__x)); })
+
 extern __always_inline double
 __ieee754_sqrt (double d)
 {